我正在尝试在我的应用程序中使用悲观锁,但它不起作用......我正在使用 rails 3 (3.0.9) 和 activerecord-oracle_enhanced-adapter (1.3.2) 并且锁选项现在正在工作为了我... :(
该应用程序只是不在执行的 sqls 中使用 se“for update”子句...
所以我制作了这个脚本来演示生成的查询......(是的,我还查看了 development.log)......
Checkout.transaction do
puts Checkout.where(:seq_cod=>562).lock(true).to_sql
puts Checkout.where(:seq_cod=>562).lock('for update').to_sql
end
结果是:
SELECT "CHECKOUTS".* FROM "CHECKOUTS" WHERE "CHECKOUTS"."SEQ_COD" = 562
SELECT "CHECKOUTS".* FROM "CHECKOUTS" WHERE "CHECKOUTS"."SEQ_COD" = 562
有人知道我错过了什么吗?
谢谢!