2012-09-26 39 views
0

請告訴我做這樣的查詢的最佳方式,這將更新多行:ColdFusion的9 ORM更新一次多行

UPDATE B 
    SET col_a = 1 
    Where col_a = 0 

我可以加載實體然後循環他們做EntitySave對於每一個,但這似乎是矯枉過正。我應該使用HQL進行更新嗎?我可以使用HQL進行更新嗎?

+1

有些時候ORM沒有意義,這可能就是其中之一。如果運行更新查詢是有意義的,只需使用''。 – Henry

回答

1

使用ORMExecuteQuery絕對可以在多行上運行更新。這是我在一個項目上工作的一個例子:

ORMExecuteQuery("UPDATE Part SET ReleaseDate = :ReleaseDate, ChangeNote = :ChangeNote WHERE ID IN (#Arguments.PartIDs#)", {ReleaseDate = Arguments.ReleaseDate, ChangeNote = Arguments.ChangeNote}); 

易爲......請注意,您作爲:VarName指定參數和養活他們爲ORMExecuteQuery函數的第二個參數。