0

我正在将存储过程从一个数据库复制到另一个数据库。我目前正在使用以下方式获取存储过程:

select OBJECT_DEFINITION(OBJECT_ID(N'dbo.' + @stored_procedure_name, 'P'))

并将返回的字符串存储在变量中@stored_procedure_defn

然后我运行该过程:

exec(@stored_procedure_defn)

但是我目前收到错误

列名“stored_procedure_name”无效

这可能是什么原因造成的?我已经尝试了几个不同的程序,他们唯一一次提到他们的名字是在create procedure [dbo].['stored_procedure_name'].

编辑对不起我的错误在别处。谢谢您的帮助。

4

1 回答 1

1

听起来存储过程引用了“新”数据库中不存在的列。请注意,该表存在,但列 ( stored_proceudre_name) 不存在。

根据您发布的内容,无效列名称和您的 memvar 名称的相似性似乎只是巧合。

于 2012-05-15T17:46:42.980 回答