mysql确保一次只能访问一次

时间:2011-06-15 06:26:23

标签: mysql

我通过Java中的几个线程连接到mysql数据库。有时,线程正在读取和更新数据库表的同一列,以便出现一些不一致。 在Java中,有一个synchronized关键字限制了对一个资源的访问。 对mysql数据库有任何可能的限制吗?这样不会发生这些不一致吗?

2 个答案:

答案 0 :(得分:2)

您应该使用具有适当隔离级别的事务。

简化示例:

BEGIN TRANSACTION
...
COMMIT

Mysql docs about transactions
Mysql docs about isolation levels

答案 1 :(得分:0)

尝试使用版本列,这样您就可以知道在处理数据时是否有人弄乱了您的数据。

含义:添加一个名为“updated”的类型为datetime的列,每当更新时检查您获得的更新是否与db中的行相同,如果他们不知道有人在您的记录中工作。< / p>