リンクサーバーを参照するストアドプロシージャを持っています。手順全体のいくつかの場所で、次のようなものが得られます。
INSERT INTO [TableName]
(...Columns...)
SELECT ...Columns...
FROM [ServerName\InstanceName].[Catalogue].[dbo].[TableName]
WHERE TableNameID = @TableNameID
この手順は、私の開発環境、テスト環境、およびライブ環境に存在します。
問題は、サーバー名が環境ごとに異なるため、プロシージャの各コピーが微妙に異なることです。これにより、スクリプト更新の展開の管理が面倒になります。
各環境で同じバージョンのプロシージャを実行できるように、プロシージャを移植可能にする方法はありますか?
そうでない場合、スクリプトの展開を間違い/エラーに陥らなくするために私ができることはありますか?
@JNKは悪い考えではありませんが、かなりの数のテーブルがありますが、少なくともビューは、リンクされたサーバー参照が全体にわたってペパードされたストアドプロシージャよりも保守が簡単です。
—
ドクタージョーンズ
@jnk、あなたはそれを答えにするべきです。
—
HLGEM、
—
同時に
SELECT <fields> FROM <linked server>
すべてのサーバーで同じビュー名を使用して、コードを維持します