开了两个DELPHI
各有两个数据库连接
操作的是同一个数据库的同一张表
其中一个DELPHI开启了事务
代码如下:
  ADOQuery1.Locate('BBBB', 1, []);
  ADOConnection1.BeginTrans;
  ADOQuery1.Edit;
  ADOQuery1.FieldByName('AAAA').AsInteger := 1;
没有提交事务;另一个DELPHI没用事务直接修改表
  ADOQuery1.Locate('BBBB', 1, []);
  ADOQuery1.Edit;
  ADOQuery1.FieldByName('AAAA').AsInteger := 0;理论上讲由于第一个DELPHI开启的事务应该是把表锁住了,
第2个DELPHI是修改不了的,但结果是表的内容被第2个DELPHI改
过来了,为什么会这样???