0

複数の行を更新するこのようなクエリを実行する最良の方法は何ですか:

UPDATE B
    SET col_a = 1
    Where col_a = 0

エンティティを読み込んでループし、エンティティごとに EntitySave を実行できますが、これはやり過ぎのようです。HQL を使用して更新を行う必要がありますか? HQL を使用して更新できますか?

4

1 に答える 1

1

を使用して、複数の行で更新を絶対に実行できますORMExecuteQuery。これは私が取り組んだプロジェクトの例です。

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

それは簡単です... パラメータを として指定し、:VarNameそれらをORMExecuteQuery関数の 2 番目の引数として入力していることに注意してください。

于 2012-09-28T15:05:06.957 に答える