日期:2014-05-18  浏览次数:20733 次

如何知道刚执行的动态SQL语句已经执行成功
set   @sql   =   'update     '   +   @tblName   +   '   set   stepCode= '+Convert(varchar,@jd_xyjd)+ ',zhcl_sj=getdate()   ,clgclj= '+@clgclj+ '     where     id= '+Convert(varchar,@sjid)
                                                                                                                              exec     sp_executesql   @sql    
在这个执行成功之后,我还要做一个动态SQL语句的执行,如果不成功就不执行下面的操作,所以,这里如何能判断,已经成功执行更新操作啊

------解决方案--------------------
如果@sql没有错误,就能成功。

print @sql

手工执行一次,如果没有逻辑错误,就OK,不用判断什么,接着下面的语句就是。

------解决方案--------------------
select @@rowcount
------解决方案--------------------
@@ERROR (Transact-SQL)
返回执行的上一个 Transact-SQL 语句的错误号。

Transact-SQL 语法约定

语法

@@ERROR


返回类型
integer

备注
如果前一个 Transact-SQL 语句执行没有错误,则返回 0。