您的位置:首页 > 数据库

如何执行用字符串组成的SQL语句

2009-11-07 19:58 204 查看
在存储过程中经常需要执行程序组成的SQL语句,可以使用exec(@sql),
也可以使用exec sp_executesql @sql。但使用sp_executesql要优于exec,建议使用 sp_executesql 而不要使用 EXECUTE 语句执行字符串。支持参数替换不仅使 sp_executesql 比 EXECUTE 更通用,而且 还使 sp_executesql 更有效,因为它生成的执行计划更有可能被 SQL Server 重新使用。
但如果使用sp_executesql ,全局变量比如@@rowcount将没有正确值,而exec有,如果想返回该SQL中某一字段的值可使用他的参数,例如:
@sql='select @id=id from table'
exec sp_executesql @sql N'@id int out ',@id out
print @id
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: