insert into table1 ...;
update table2 set count=count+1;
以上代码向
table1
插入了一些内容,如果成功,则更新table2
中的count
字段。当然,这种情况可以通过事务来处理,但是事务需要锁定表,在高并发系统中效率不高。如果您需要在该事务中更新多个表格,情况可能会更糟。
你有什么解决方案吗?
我正在使用PHP,并以以下方式实现事务:
mysql_query('begin');
mysql_query($statement1);
mysql_query($statement2);
...
mysql_query('commit');
所以看起来所有在这些
$statement
中引用的表都会被锁定?