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 に答える