如何在允许其他连接执行SELECT操作的事务中对表执行LOCK WRITE?
执行此操作时:
BEGIN;
LOCK TABLE my_table;
<very long commands>
其他连接无法执行SELECT COUNT(*)FROM my_table等SELECT操作;
我想要达到的目的是在我写作的同时防止他人写作,而不会妨碍他们阅读.
最佳答案 将LOCK放入事务块内的表,将不允许其他用户/会话读取或写入表.
如果您希望您的交易只读,您可以使用以下语法.
BEGIN [READ ONLY];
<very long commands>
如果我做了一个错误的假设请评论,我将重新调整我的答案.