Postgres データベースに対して github.com/bmizerany/pq を使用しています。「todos」テーブルのすべての行を選択し、各行の条件をチェックして、それに応じて行を更新する必要があります。疑似コード:
rows, _ := dbConn.Query("SELECT id, condition, task FROM todos")
for rows.Next() {
var Id int
var Condition int
var Task string
rows.Scan(&Id, &Condition, &Task)
if Condition == 0 {
UpdateTask(Id, Task)
}
}
UpdateTask() 関数は、SQL 更新ステートメントを発行して行を更新します。
SELECT クエリ内で SQL update を発行すると、データベースがロックされますか? これは、そのような更新を行う適切な方法ですか?