0

私は非常に厄介な問題に直面しています。SPROCの1つは、SQLの動的ビットを構築してから実行することsp_executesqlです(実行用のSQL文字列の構築に関する問題には立ち入らないでください)。

Visual Studio 2010データベースプロジェクト(別名DataDude)を使用してスキーマの比較と展開を行うと、SPROCで以下のエラーが発生します。

TSD00563 [dbo]。[MYSPROC]は[sys]。[sp_executesql]に依存し、[sys]。[sp_executesql]はターゲットデータベースに存在しないため、このデプロイメントで実行中にエラーが発生する可能性があります

誰かが私がこれを回避する方法を知っていますか?

マスターデータベーススキーマファイルへの参照がありますが、違いはありません。また、それは参照masterではなく、sys代わりにです。

どうもありがとう、Jaans

4

2 に答える 2

1

「あなたが言及した問題は既知の問題です。RTMでこれを修正しました。マスター.dbschemaファイルにdb参照を追加するときは、データベース名の部分がリテラルとして選択され、「master」という名前になっていることを確認する必要があります。」

http://social.msdn.microsoft.com/Forums/en-US/vstsdb/thread/68b0ce97-5275-42af-b213-bd456ce882d7

于 2012-02-14T13:03:29.987 に答える
0

使う 。[sys]。[sp_executesql]の前のプレフィックス

これが例です EXEC .sys.sp_executesql 'SELECT * FROM Table'

確かに奇妙です!

于 2012-01-18T12:54:38.767 に答える