web-dev-qa-db-ja.com

データベース名を同義語にする方法は?

oneデータベースインスタンス内で、設定されたデータベースを新しい名前に復元する必要があります。新しい名前には、_DEVや_QAのように、開発フェーズに基づいて接尾辞が付けられます。どこ:

  • DBApp_DEVはDBGen_DEVにアクセスし、
  • DBApp_QAはDBGen_QAにアクセスします。

DBApp_DEVから、SPでこれを行います。

select Col1 from DBGen_DEV.dbo.TableName

ただし、DBApp_QAから、同じSPでこれを実行する必要があります。

select Col1 from DBGen_QA.dbo.TableName

では、どうすればそのSPのデータベース名を同義語にすることができますか?

1
Irawan Soetomo

OK、DBApp_DEVにシノニムを作成することでこれを解決することができました。

CREATE SYNONYM GenTableName FOR DBGen_DEV.dbo.TableName

また、DBApp_QAでは、同義語は次のようになります。

CREATE SYNONYM GenTableName FOR DBGen_QA.dbo.TableName

このようにして、両方のDBApp_ *データベースに存在するSP)でまったく同じクエリを維持できます。

select Col1 from GenTableName
1
Irawan Soetomo