问题是关于 mysql 事务。
create table tbl1(
id integer,
val integer,
primary key (id)
);
insert into tbl1 (id, val) values (1,2);
我创建了两个同时工作的用户。
USER1 USER2
start transaction;
update tbl1 set val = 3 where id = 1;
delete from tbl2 where id = 1 and val = 3;
commit;
因此,该行不会被删除。如何解决?我希望该行将被删除,因为删除查询晚于第一个用户的事务开始。
编辑:实际上行将被删除,所以没有解释为什么会这样。