次の方法で共有


Azure Data Studio のテーブル デザイナー

適用対象: SQL Server Azure SQL データベース Azure SQL Managed Instance

Azure Data Studio のテーブル デザイナーでは、Transact-SQL エディターと共に、テーブル固有のプログラミング オブジェクトを含む SQL Server データベース用のテーブル構造を作成および編集するための視覚的なエディター エクスペリエンスが提供されます。

SQL テーブル デザイナーが選ばれる理由

Azure Data Studio のテーブル デザイナーを使用すると、ユーザーは、Transact-SQL ステートメントを記述しなくても、データベース テーブル、主および外部キー、インデックス、制約をグラフィカル ユーザー インターフェイス (GUI) で簡単に構成および管理できます。

テーブル デザイナーの概要

テーブル デザイナーを構成するペインは、3 つの異なるペインに分かれています。 最初のペインは、テーブル デザインの [Overview/General](概要/全般) ペインです。 これは、[列]、[主キー] と [外部キー]、[CHECK 制約]、[インデックス]、および [全般] タブで構成されます。2 番目のペインは、テーブルのプロパティを定義するために使用されます。 最後に、3 番目のペインは、読み取り専用 T-SQL スクリプト用のスクリプト ペインであり、テーブル デザイナー GUI でリアルタイムで実行されるアクション、およびテーブル デザイナーで実行されるアクションに関連する成功またはエラー メッセージが表示されます。 これらのペインのサイズは、マウスをドラッグすることで自由に調整できます。

3 つの異なるペインを示すテーブル デザイナーのスクリーンショット。

テーブル デザイナーを使用してデータベース テーブルを作成および更新する

テーブルを作成するには、データベースが存在する SQL Server 接続をアクティブにする必要があります。 これは、オブジェクト エクスプローラーでサーバー接続アイコンの右下隅に緑色のドットによって示されます (下図)。 赤色の場合 (これは、接続が非アクティブであることを意味します)、オブジェクト エクスプローラーでサーバー接続名を選択して接続をアクティブにします。 SQL Server への接続に関するチュートリアルについては、チュートリアルの記事「Azure Data Studio を使用して、SQL Server に接続してクエリを実行する」を参照してください。

この記事には AdventureWorks2022 サンプル データベースが必要です。このサンプル データベースは、Microsoft SQL Server サンプルとコミュニティ プロジェクトのホーム ページからダウンロードできます。

テーブルの作成

  1. AdventureWorks2022 データベース ドロップダウンで [テーブル] フォルダーを右クリックし、[新しいテーブル] を選択します。

    オブジェクト エクスプローラーを走査して新しいテーブルを作成する方法を示すテーブル デザイナーのスクリーンショット。

  2. [テーブル名] フィールドの値を既定の NewTable から City に変更します。 [テーブルのプロパティ] フィールドには、このテーブルの説明を自由に追加できます。

  3. [名前] 列グリッドで、提供されている既定値 column_1ID に変更します。 [主キー] 列のチェックボックスをオンにして、これをテーブルの主キーにします。 主キーの詳細については、主キーに関するこちらの SQL Server ドキュメントを参照してください

    テーブル名を編集し、主キー識別子を示す列を追加する方法を示すテーブル デザイナーのスクリーンショット。また、テーブル デザイナーから生成された T-SQL スクリプトも示しています。

  4. 手順 3 を繰り返して、2 つの新しい[都市名] 列と [人口] 列を追加します。 これら 2 つの列の [主キー][Null を許容] チェックボックスをオフにします。 [移動] 列にカーソルを位置付けてマウスをドラッグすると、列をユーザー設定に合わせて再配置できることに注意してください。

    注意

    既定のテーブルに変更が加えられると、生成される読み取り専用の Transact-SQL コードが変更されることに注意してください。

  5. 新しいテーブルの設計が完了したので、この変更を AdventureWorks2022 データベースに公開する必要があります。 これを行うには、次に示すようにして [発行] アイコンを選択します。 ローカル デバイスの save コマンドのショートカットを使用して公開することもできます。

    発行アイコンが強調表示されたテーブル デザイナーのスクリーンショット。

    このアイコンを選択すると、プレビュー ダイアログ ウィンドウが表示されます。これには、テーブルの作成で実行されたすべてのアクションが示されます。 また、変更を AdventureWorks2022 データベースに直接公開するか、またはクエリ エディターで編集可能な SQL スクリプトを生成するためのオプションも提供されます。このスクリプトは、データベースに公開するためにファイルとしてローカルで保存するか、実行することができます。

    保存ダイアログ ボックスを示すテーブル デザイナーのスクリーンショット。

    クエリ エディターで T-SQL スクリプトを実行するには、次に示す [実行] ボタンを選択します。

    SQL CMD オプションを使用してクエリ エディターでデータベースの変更を公開する方法を示すテーブル デザイナーのスクリーンショット。

    必ず、スクリプトを実行するクエリ エディターをデータベースに接続してください。 このためには、クエリ エディター ウィンドウで [接続] を選択します。 これにより、[接続] ダイアログ ボックスが表示されます。ここでは、データベース スクリプトを実行するサーバーの資格情報を入力できます。

    注意

    テーブル デザインは、クエリ エディターで T-SQL スクリプトを編集することによって手動で変更できることに注意してください。 Transact-SQL スクリプトを正常に実行するには、SQLCMD モードを有効にする必要があります。 このためには、上図に示すこのボタンを切り替えます (上図では、既に有効になっているため、[SQLCMD を無効にする] が表示されています)。 この詳細については、SQLCMD ユーティリティのドキュメントを参照してください。

  6. テーブル デザイナーで行った変更を保存することを忘れないでください。 変更を保存しないと、次に示すように黒い網掛けのドットが表示されます。

    黒色のドットがあるため、作業が保存されていないことがわかるテーブル デザイナーのスクリーンショット。

    次の図では、黒色のドットがない場合を示しています。これにより、作業が保存されていることがわかります。

    黒色のドットがないため、作業が保存されていることがわかるテーブル デザイナーのスクリーンショット。

    注意

    [公開] ダイアログに表示される警告は、テーブルの作成と移行に関連するため、すべての警告に注意してください。 これらは、特に大規模なデータ セットを操作している場合に発生する可能性のあるデータ損失やシステムのダウンタイムに備えて、ガイドを提供します。

  7. テーブルを公開したら、Tables* フォルダーを右クリックし、[更新] を選択します。 これにより、フォルダーが新しいテーブルで再作成されます。

    テーブルの更新方法を示すテーブル デザイナーのスクリーンショット。

既存のテーブルの編集

テーブル デザイナー内の既存のテーブルを編集するには、オブジェクト エクスプローラーでそのテーブルを右クリックし、メニューから [デザイン] を選択します。 このオプションによって、テーブル デザイナー ビューが表示され、必要に応じて編集を行うことができます。 次を参照してください。

既存のテーブルの編集方法を示すテーブル デザイナーのスクリーンショット。

列のプロパティは、上に示すようにメイン ペインで変更するか、プロパティ ペインで変更することができます。 [列のプロパティ] ペインを表示するには、次に示すように、列 (たとえば、[都市名]) を選択します。 プロパティ ペインに、[都市名] 列固有のプロパティが表示されます。 変更を保存して公開することを忘れないでください。

列のプロパティ ペインを使って列のプロパティを変更する方法を示すテーブル デザイナーのスクリーンショット。

テーブルの削除

テーブルを削除するには、オブジェクト エクスプローラーで tables テーブル フォルダーを右クリックします。 テーブルが見つかったら、そのテーブルを右クリックし、[Script as Drop](削除時のスクリプト) を選択します。 これにより、実行するとテーブルを削除するスクリプトを含むクエリ エディター ウィンドウが開きます。 [実行] を選択してテーブルを削除します。

テーブルの削除方法を示すテーブル デザイナーのスクリーンショット。

CHECK 制約

CHECK 制約は、列に格納できる値の範囲を制限するために使用されます。 列に対して CHECK 制約を定義すると、その列に対して特定の値のみが許可されます。 次の例では、0 未満のエントリを許可しない CHECK 制約を [人口] 列に追加する方法を示します。

  1. City テーブルで [CHECK 制約] タブを選択し、[+ 新しい CHECK 制約] を選択します。

  2. これにより、追加する制約の [名前][式] を定義できるテーブルが設定されます。 既定の名前と式が提供されています。 [名前] フィールドで、この既定の名前をクリアし、「人口」と入力します。 [式] フィールドで、既定の式をクリアし、式「[人口]>=(0)」を入力します。 この CHECK 制約をデータベースに公開することを忘れないでください。

    CHECK 制約を追加する方法を示すテーブル デザイナーのスクリーンショット。

データベース内のテーブル間の性質に応じて、必要な数の制約を追加できます。 CHECK 制約の詳細については、CHECK 制約のドキュメントを参照してください。

注意

テーブル レベルでオブジェクト エクスプローラーを更新して、テーブルの削除を確認することを忘れないでください。

外部キー

外部キーは、テーブル内のデータ間のリンクを確立して適用するために使用されます。 外部キーの詳細については、主キーと外部キーの制約に関するこちらのドキュメントを参照してください。この例では、PersonProfile という名前の別のテーブルを作成し、外部キーを使用して、このテーブルを City テーブルにマップします。

  1. ID(int、主キー)、名前(nvarchar(50))、年齢(int) の 3 つの列を含む PersonProfile という名前のテーブルを作成します。 [名前] 列と [年齢] 列を null 非許容に設定します。

    外部キーを設定するためのテーブルを作成する方法を示すテーブル デザイナーのスクリーンショット。

  2. [外部キー] タブを選択し、[+ 新しい外部キー] を選択します。 ここでは、ID を使用して PersonProfile テーブルを City マップするため、[外部キー] ドロップ ダウンを選択し、[dbo.City] を選択します。 次に、[外部キーのプロパティ] ウィンドウの [+ 新しい列マッピング] の下で、[外部キー] ドロップダウンを選択し、[ID] を選択します。 これは、City テーブルの ID です。 データベースに公開することを忘れないでください。

    外部キー設定の作成方法を示すテーブル デザイナーのスクリーンショット。

次の手順