系統用SocketConnection做遠程連結,在客戶端上用clientdataset對兩個sql表做insert操作,只要有一個表插入不成功,就清除兩個表的插入數據,請問用事務怎麼寫?
解决方案 »
- 调用WINDOWSAPI的简单问题,COPY文件,送分咯~~~
- installshield安装bde的sql server问题。
- 使用了UDP是不是客户端和服务端不能在同一台电脑上使用啊?
- 百分求救!求高手指点!请问如何编程控制基于WDM或EWDM驱动的声卡的音量!
- 两个cxgrid点击触发对应
- 求救,关于tserversocket和tclientsocket
- c#前来拿分啊:),只有你把事件给我说清楚了,后边的分才能给你;
- Delphi 怎样使用 mshtml 解析 HTML代码(不要依赖 Webbrowse 控件的)
- 我有个dll,请问如何在自己的程序里加入这个dll
- 那有delphi遍的ftp客户端程序,(用winsock而不是delphi控件的)
- POSTMESSAGE 与SENDMESSAGE
- 如何动态生成窗体
ADOConnection1.BeginTrans ;
try
ADOCommand1.CommandText:='insert into test1(id,name) values(:number,:char)';
ADOCommand1.Parameters.Items[0].Value:=1;
ADOCommand1.Parameters.Items[1].Value:='a';
ADOCommand1.Execute;
ADOCommand1.CommandText:='insert into test1(id,name) values(:number,:char)';
ADOCommand1.Parameters.Items[0].Value:=2;
ADOCommand1.Parameters.Items[1].Value:='b';
ADOCommand1.Execute;
ADOConnection1.CommitTrans;
except
ADOConnection1.RollbackTrans;
end; 原理基本与这类似 try一下 有异常就回滚
在插入主表和明细后分别判断A的值,如果不是1,或者2,就删除刚才插入的数据。大体思路是这样,你自己再考虑考虑
謝謝yf520gn.