Mil*_*šić 12 mysql innodb transactions join locks
"SELECT ... FOR UPDATE"锁是否在MySQL中加入了行?
如果是这样,是否可以禁用此行为?
文档中没有任何相关内容.我已经看到Oracle支持"SELECT ... FOR UPDATE OF table_name"table_name是主表或者受影响的行将被锁定的连接表之一,但我从来没有在MySQL的上下文中看到这一点.
请参阅此MySQL文档页面.它说:
锁定读取,UPDATE或DELETE通常会在处理SQL语句时扫描的每个索引记录上设置记录锁定.在语句中是否存在排除该行的WHERE条件并不重要.
和:
对于SELECT ... FOR UPDATE或SELECT ... LOCK IN SHARE MODE,为扫描的行获取锁定,并且对于不符合包含在结果集中的行,预期会释放锁定(例如,如果它们不符合WHERE子句中给出的标准.但是,在某些情况下,行可能不会立即解锁,因为在查询执行期间结果行与其原始源之间的关系会丢失.
"扫描行"是指来自连接中使用的任何表的行.
| 归档时间: |
|
| 查看次数: |
5867 次 |
| 最近记录: |