如何获得@@error的值?(100分)

  • 主题发起人 主题发起人 renzhm
  • 开始时间 开始时间
R

renzhm

Unregistered / Unconfirmed
GUEST, unregistred user!
我用循环生成细表数据的SQL语句,包含事务处理,如:

Str:='begin tran ';

for i:=0 to NumCount-1 do
begin
str:=str+'insert into table ...'+
'if @@error<>0 rollback tran';
end;
str:=str+'commit tran ';

请问,执行该语句后,如何获得@@error的值,这样就知道到底成功没有。
 
if @error<>0
begin
rollback tran
return -10//如果返回-10 代表不成功
end;
commit tran
return 1
//1代表成功
 
问题是我用ADOQuery执行此语句,如何取得这个值呢?
 
if @error<>0
begin
rollback tran
return @@error//如果返回-10 代表不成功
end;
commit tran
return @@error
//1代表成功
 
莫若用存储过程更爽
 
我这是主细表结构的细表数据增加,不可能用存储过程
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部