同じテーブル名でSQL Server 2005で同義語を作成するときのエラー
-
24-10-2019 - |
質問
テーブルの同義語を作成したいので、このデータベースの他のすべてのユーザーが書く代わりにこの同義語を使用します databasename.schema.table 、しかし私が書くとき:
CREATE SYNONYM [ACCT_STMT] FOR [AccountStatementPRD].[dbo].[ACCT_STMT]
GO
エラーMSGを生成します。
データベースにはすでに「acct_stmt」という名前のオブジェクトがあります。 MSG4606、
Oracleでは、同じテーブル名で同義語を作成できます!
解決
あなたが望むのは名前のみを使用することだけで、すでに正しいDBでstatmentを実行している場合、databasename.schema.tablenameを使用する必要はありません。
たとえば、の代わりに
SELECT * FROM [AccountStatementPRD].[dbo].[ACCT_STMT]
あなたはただできる
SELECT * FROM [ACCT_STMT]
同義語の同じ名前を持っている限り、それは同じで動作しません DB
所属していません StackOverflow