sql server 系统全局变量
2020-04-10 本文已影响0人
z_strive
系统全局变量是系统内置,返回系统信息,一般是两个@开头。
@@ERROR:返回执行的上一个T-SQL的错误号,如果没有错误,返回0。
注意:执行语句后@@ERROR会被重置,所以在执行语句后要检查该数值,或者存到局部变量中再检查。
@@ROWCOUNT:返回受上一个语句影响的行数,返回int值。如果行数超过20亿,要用ROWCOUNT_BIG。
@@ERROR和@ROWCOUNT 在语句执行后总是会发生变化,所以一般用来检验update、insert是否成功。
例子:
insert into #ts
exec proc_orders_intercept @userid=@user_id,@ArticleidList=@ArticleList
if @@ERROR<>0 or @@ROWCOUNT=0
begin
set @return = 1
raiserror('存盘拦截数据临时表插入失败',16,1)
goto err_lab ---流程跳转
end
err_lab:
if @return < 10000
set @return = 10000 + @return
rollback tran tran_save