2011-01-28 13 views
7

Es posible bloquear la tabla de la base de datos. MySQL Ejemplo: Usuarios TablasRails 3 bloqueo de tabla

bloqueo de escritura

..using algunos métodos ActiveRecord nativos?

Respuesta

9

Este no es compatible con ActiveRecord, tendrá que ejecutar manualmente con:

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

Es posible que desee comprobar fuera de este discussion at ruby-forum.com de algo más de información.

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 

Ver: http://api.rubyonrails.org/classes/ActiveRecord/Locking/Pessimistic.html para más detalles

+1

la semántica de bloqueo en ese enlace están a punto de bloqueo a nivel de fila en lugar de tablas enteras. – Jason