2011-01-28 1 views
7

È possibile bloccare la tabella del database. MySQL Esempio: gli utenti TAVOLIRails 3 table lock

blocco in scrittura

..using alcuni metodi ActiveRecord nativi?

risposta

9

Questo non è supportata da ActiveRecord, sarà necessario eseguire manualmente con:

ActiveRecord::Base.connection.execute("LOCK TABLES users WRITE") 

Si consiglia di controllare questo discussion at ruby-forum.com per qualche informazione in più.

0
Pass :lock => true to ActiveRecord::Base.find to obtain an exclusive lock on the selected rows 

Pass :lock => 'some locking clause' to give a database-specific locking clause of your own such as ‘LOCK IN SHARE MODE’ or ‘FOR UPDATE NOWAIT 

Vedi: http://api.rubyonrails.org/classes/ActiveRecord/Locking/Pessimistic.html per dettagli

+1

la semantica di bloccaggio in quel link sono circa livello di riga blocco anziché intere tabelle. – Jason