我正在使用sql server
我想使用T-sql将存储过程从一个数据库复制到另一个数据库, 但我的存储过程包含动态sql。
我从sys.sql_modules
获取定义并使用此代码执行它
exec sp_executesql @sp_definition
但它给了我错误:
消息102,级别15,状态1,行23错误的语法附近' + @tblName +'
我的存储过程示例
CREATE Procedure insertRow
(
@tblName nvarchar(250),
@value nvarchar(250)
)
AS
DECLARE @script nvarchar(1000)
SET @script='INSERT INTO '+@tblName +' VALUES('+@value+')'
exec @script
如何逃脱引号以成功执行
答案 0 :(得分:0)
解决方案是正确地转义引号并使用'''而不是仅使用一个引用