CREATE PROCEDURE TestProc
AS
declare @rc int
select @rc=0
begin
insert into NotifyInfo(a,b) values('a','b')
select @rc=@@error
if @rc<>0
begin
select @rc=-1
RETURN @RC
END
ELSE SELECT @RC=0
RETURN @RC
END
AS
declare @rc int
select @rc=0
begin
insert into NotifyInfo(a,b) values('a','b')
select @rc=@@error
if @rc<>0
begin
select @rc=-1
RETURN @RC
END
ELSE SELECT @RC=0
RETURN @RC
END
AS
insert into NotifyInfo(a,b) values('a','b')
if @@error>0 reture 'Error!'
CREATE PROCEDURE TestProc
AS
begin
insert into NotifyInfo(a,b) values('a','b')
if @@error<>0
begin
rollback tran
print'tran rollback!'
return
END
ELSE begin
commit
print'tran commit!'
endEND
你是不是这样:
如果这样那么:
CREATE PROCEDURE TestProc
@memo varchar(30) output
AS
begin
insert into NotifyInfo(a,b) values('a','b')
if @@error<>0
begin
rollback tran
select @memo='tran rollback!'
return
END
ELSE begin
commit tran
select @memo='tran commit!'
endEND你调用该存储过程时,返回的@memo就会告诉你提交是不是成功了。