麻烦各位大大了,我用delphi,然后
adoconnection1.BeginTrans;
adoconnection1.Execute(sql1);
adoconnection1.Execute(sql2);
adoconnection1.Execute(sql3);
adoconnection1.Execute(sql4);
adoconnection1.Execute(sql5);
adoconnection1.CommitTrans;执行之后,程序无异常,没有回滚,但是很多次操作之后,就会发现例如其中某一个sql3并没有执行成功,该修改的数据没有修改,而且这个时候程序也没有抛出异常,所以也就没有回滚想问问是什么原因,怎么解决。谢谢
希望能够得到解决,再次感谢,如果分不够,可以开贴再给。
adoconnection1.BeginTrans;
adoconnection1.Execute(sql1);
adoconnection1.Execute(sql2);
adoconnection1.Execute(sql3);
adoconnection1.Execute(sql4);
adoconnection1.Execute(sql5);
adoconnection1.CommitTrans;执行之后,程序无异常,没有回滚,但是很多次操作之后,就会发现例如其中某一个sql3并没有执行成功,该修改的数据没有修改,而且这个时候程序也没有抛出异常,所以也就没有回滚想问问是什么原因,怎么解决。谢谢
希望能够得到解决,再次感谢,如果分不够,可以开贴再给。
比如
adoconnection1.BeginTrans;
adoconnection1.Execute(sql1);
adoconnection1.Execute(sql2);
adoconnection1.Execute(sql3);
adoconnection1.Execute(sql4);
adoconnection1.Execute(sql5);
adoconnection1.CommitTrans;
adoquery1.requery();
adoquery2.requery();
......
2、你说的只有一条。未执行,不大可能。如果出现这类问题,应该是MSSQL服务器软件有问题了。这也许全部执行了,你未查觉,再重新显示(刷新)数据看看。
AdoQuery.ExecuteOptions:=[TExecuteOption.eoExecuteNoRecords];
AdoQuery.Execute(?);
AdoQuery.Execute(?);
AdoQuery.Execute(?);