シノニムの作成

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

この記事では、SQL Server Management Studio または Transact-SQL を使用して、SQL Server でシノニムを作成する方法について説明します。

セキュリティ

ユーザーが特定のスキーマ内にシノニムを作成するには、CREATE SYNONYM 権限が必要であり、さらにスキーマを所有しているか ALTER SCHEMA 権限が与えられている必要があります。 CREATE SYNONYM 権限は、譲与可能な権限です。

SQL Server Management Studio の使用 [SQL Server]

シノニムの作成

  1. オブジェクト エクスプローラーで、新しいビューを作成するデータベースを展開します。

  2. [シノニム] フォルダーを右クリックし、[新しいシノニム] を選択します。

  3. [シノニムの追加] ダイアログ ボックスで、次の情報を入力します。

    [シノニム名]
    このオブジェクトに対して使用する新しい名前を入力します。

    [シノニム スキーマ]
    このオブジェクトに対して使用する新しい名前のスキーマを入力します。

    サーバー名
    接続するサーバー インスタンスを入力します。

    データベース名
    オブジェクトを含んでいるデータベースを入力または選択します。

    スキーマ
    オブジェクトを所有しているスキーマを入力または選択します。

    オブジェクトの種類
    オブジェクトの型を選択します。

    オブジェクト名です。
    シノニムで参照するオブジェクトの名前を入力します。

Transact-SQL の使用

シノニムの作成

  1. データベース エンジンに接続します。

  2. 標準バーから、 [新しいクエリ] を選択します。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、[実行] を選択します。

例 (Transact-SQL)

次の例では、 AdventureWorks2022 データベース内の既存のテーブルに対してシノニムを作成します。 このシノニムは、その後の例で使用されます。

USE tempdb;  
GO  
CREATE SYNONYM MyAddressType  
FOR AdventureWorks2022.Person.AddressType;  
GO  

次の例では、 MyAddressType シノニムの参照先のベース テーブルに行を挿入しています。

USE tempdb;  
GO  
INSERT INTO MyAddressType (Name)  
VALUES ('Test');  
GO  

次の例では、動的 SQL でのシノニムの参照方法を示しています。

USE tempdb;  
GO  
EXECUTE ('SELECT Name FROM MyAddressType');  
GO  

次のステップ