function TfServer.pUpdateData():integer;//修改数据
var
q1:TQuery;
begin
result:=-1;
dbDynamic.StartTransaction ;
try
try
q1:=TQuery.Create(nil);
with q1 do
begin
databasename:=dbDyNamic.DatabaseName ;
s:='update My_table set ....';
sql.add(s);
EXECSQL;
end;
except
on Exception do
begin
dbdyNamic.Rollback ;//出错回滚
raise;
end;
end;
finally
q1.Active :=false;
q1.Free;
end;
dbdyNamic.Commit ;
result:=0;
end;
如果更新数据出错,比如字段值太长,EXECSQL处就会捕捉到异常,并会抛出异常,必须点击弹出窗口程序才能继续运行;
如果我不要抛出异常,使程序正常运行(作为服务器,出现异常的用户,终止这次更新操作,但不能影响到别的用户操作),改如何做?谢先!!!
var
q1:TQuery;
begin
result:=-1;
dbDynamic.StartTransaction ;
try
try
q1:=TQuery.Create(nil);
with q1 do
begin
databasename:=dbDyNamic.DatabaseName ;
s:='update My_table set ....';
sql.add(s);
EXECSQL;
end;
except
on Exception do
begin
dbdyNamic.Rollback ;//出错回滚
raise;
end;
end;
finally
q1.Active :=false;
q1.Free;
end;
dbdyNamic.Commit ;
result:=0;
end;
如果更新数据出错,比如字段值太长,EXECSQL处就会捕捉到异常,并会抛出异常,必须点击弹出窗口程序才能继续运行;
如果我不要抛出异常,使程序正常运行(作为服务器,出现异常的用户,终止这次更新操作,但不能影响到别的用户操作),改如何做?谢先!!!
解决方案 »
- idftp在连续上传文件过程中,创建目录时出错,请问什么原因?
- 如何实现修改过的word文件,别人不能打开,只有自己可以打开??不知道有什么好方法可以实现??(希望高手帮忙)
- 求救:activeForm释放问题?
- Delphi7.0晕晕中~
- 请教个关于程序控制文件读写的问题
- DBGrid上显示图片?
- fastreport问题,急需解决!!如何在主项数据中指定2个数据集,横向显示两个数据集的数据?up有分
- 关于ListBox的问题!
- Borland 有点不对劲 !
- 想向精通delphi的高手请教问题,有咨询费哦!(人民币)
- 如何使在grid单元格中输入的内容不切换焦就直接反应到dataset中去?
- COM DLL问题,紧急求大家帮助,谢谢
比如
try
//....
except
//do nothing!!
end;
except
on Exception do
begin
dbdyNamic.Rollback ;//出错回滚
//raise;
end;
end;
finally
q1.Active :=false;
q1.Free;
end;
result:=0;
end;