如何锁定单行
我有一个 user
表,其中包含 lastusedecnumber
字段.
I have a user
table with field lastusedecnumber
.
我需要访问并增加lastusedecnumber
.
在访问期间,我需要锁定特定的用户行(而不是整个表).
During that accessing time I need to lock that particular user row (not the entire table).
我该怎么做?
表类型为MyISAM
.
推荐答案
MySQL 仅使用来自 MyISAM 表的表级锁定.如果可以,请切换到 InnoDB 进行行级锁定.
MySQL uses only table-level locking from MyISAM tables. If you can, switch to InnoDB for row-level locking.
这是 MySQL 站点的链接,描述了由 SQL 语句为 InnoDB 表设置的锁.http://dev.mysql.com/doc/refman/5.0/en/innodb-locks-set.html
Here's a link to the MySQL site describing Locks set by SQL Statements for InnoDB tables. http://dev.mysql.com/doc/refman/5.0/en/innodb-locks-set.html
相关文章