チュートリアル : XML スキーマ コレクションを使用するデータベース プロジェクトの作成と配置

XML スキーマ コレクションを定義し、データベース プロジェクトの 1 つ以上の列に関連付けることができます。 Visual Studio Team System Database Edition では、XML スキーマ定義 (XSD: XML schema definition) ファイルに参照を追加して、スキーマ コレクションの定義内で定義しているスキーマを使用できます。このチュートリアルでは、次の手順を行います。

  • スキーマ ファイルを作成する。

  • データベース プロジェクトを作成する。

  • そのコレクションにバインドされている列を含むスキーマ、XML スキーマ コレクション、およびテーブルを定義する。

  • データベース プロジェクトを構成、ビルド、および配置する。

スキーマ ファイルを作成する

通常、XSD ファイルを既に持っていると想定します。 このチュートリアルでは、データベース プロジェクト内で参照できる XSD ファイルを作成します。

XSD ファイルを作成するには

  1. [ファイル] メニューの [新規作成] をポイントし、[ファイル] をクリックします。

    [新しいファイル] ダイアログ ボックスが表示されます。

  2. [カテゴリ] ボックスの一覧の [全般] をクリックします。

  3. [テンプレート] ボックスの一覧の [XML スキーマ] をクリックし、[開く] をクリックします。

    スキーマ ファイルが XML エディタに表示されます。

  4. ファイルの内容を次の XML に置き換えます。

    <?xml version="1.0" encoding="utf-16"?>
    <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <element name="root" type="string"/>
    </schema>
    
  5. [ファイル] メニューの [名前を付けて保存] をクリックします。

  6. ファイルを作成するフォルダに移動します。

  7. [オブジェクト名] ボックスに「MySchemaCollection」と入力し、[保存] をクリックします。

    次に、データベース プロジェクトを作成します。

データベース プロジェクトを作成する

ソース データベース プロジェクトを作成するには

  1. [ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。

  2. [新しいプロジェクト] ダイアログ ボックスで、[プロジェクトの種類] ボックスの一覧の [データベース プロジェクト] ノードを展開し、[SQL Server 2005] をクリックします。

    Dd193276.alert_note(ja-jp,VS.90).gifメモ :

    配置先データベースに異なるバージョンの SQL Server がある場合は、その SQL Server のバージョンに対応するプロジェクトの種類を指定できます。

  3. [テンプレート] ボックスの一覧の [SQL Server 2005 データベース プロジェクト] をクリックします。

  4. [名前] ボックスに「MySCProject」と入力します。

  5. [場所] ボックスで、データベース プロジェクトを作成するパスを入力するか参照し、<ui>[OK]</ui> をクリックします。

    データベース プロジェクトが作成され、ソリューション エクスプローラに表示されます。

    次に、プロジェクト内でスキーマを定義します。

スキーマ、XML スキーマ コレクション、およびテーブルを定義する

スキーマを定義するには

  1. [表示] メニューの [スキーマ ビュー] をクリックします。

  2. [MySCProject] ノードを展開し、[スキーマ] ノードを展開します。[スキーマ] ノードを右クリックし、[追加] をポイントして、[スキーマ] をクリックします。

    [新しい項目の追加] ダイアログ ボックスが表示されます。

  3. [テンプレート] ボックスの一覧の [スキーマ] をクリックします。

  4. [名前] ボックスに「Person」と入力し、[追加] をクリックします。

  5. [ファイル] メニューの [すべてを保存] をクリックします。

    次に、XML スキーマ コレクションの定義を含む XSD ファイルへの参照を追加します。

スキーマ コレクションの定義を含む XSD ファイルへの参照を追加するには

  1. ソリューション エクスプローラで、[MyScProject] ノードを展開し、[参照] フォルダを右クリックして、[XSD 参照の追加] をクリックします。

    [XSD 参照の追加] ダイアログ ボックスが表示されます。

  2. [XSD ファイル名] で、このチュートリアルの最初の手順で定義した XSD ファイルのパスおよび名前を入力するか参照します。

  3. [スキーマ] ボックスの一覧の [Person] をクリックします。

  4. [名前] ボックスに「ContactTypes」と入力し、[OK] をクリックします。

    次に、参照されているスキーマ コレクションを使用するテーブルを定義します。

スキーマ コレクションを使用するテーブルを定義するには

  1. [表示] メニューの [スキーマ ビュー] をクリックします。

  2. スキーマ ビューで、[MySCProject] ノードを展開し、[スキーマ] ノードを展開します。次に、[Person] ノードを右クリックし、[追加] をポイントし、[テーブル] をクリックします。

    Dd193276.alert_note(ja-jp,VS.90).gifメモ :

    このチュートリアルを簡単にするために、テーブル定義は更新しません。

    [新しい項目の追加] ダイアログ ボックスが表示されます。

  3. [テンプレート] ボックスの一覧の [テーブル] をクリックします。

  4. [名前] ボックスに「Contacts」と入力し、[OK] をクリックします。

    新しいテーブルがデータベース プロジェクトに追加され、Transact-SQL (T-SQL) エディタに表示されます。

  5. T-SQL エディタで、次のステートメントに一致するようにテーブル定義を更新します。

    CREATE TABLE [Person].[Contact]
    (
    column_1 int NOT NULL, 
    column_2 int NULL,
    [AdditionalInfo] XML(CONTENT [Person].[ContactTypes]) NULL
    )
    
  6. [ファイル] メニューの [すべてを保存] をクリックします。

    次に、データベース プロジェクトをビルドします。

データベースを構成、ビルド、および配置する

MySchemaProject を構成、ビルド、および配置するには

  1. ソリューション エクスプローラで、[MySCProject] ノードを右クリックし、[プロパティ] をクリックします。

  2. [プロパティ] ページで [配置] タブをクリックします。

  3. [配置動作] ボックスの一覧の [配置スクリプト (.sql) を作成してデータベースに配置します] をクリックします。

  4. [ターゲット データベースの設定] の横の [編集] をクリックします。

  5. このデータベース プロジェクトを配置するターゲット サーバーへの接続を指定し、[OK] をクリックします。

  6. [ターゲット データベース名] ボックスに「MySprocProject」と入力します。

    Dd193276.alert_caution(ja-jp,VS.90).gif重要 :

    複合ソリューションを構成する 3 つのすべてのプロジェクトに対して同一のターゲット データベース名を指定します。そうでない場合、配置は失敗します。

  7. [ファイル] メニューの [すべてを保存] をクリックします。

  8. ソリューション エクスプローラで、[MySCProject] ノードを右クリックし、[ビルド] をクリックします。

  9. ソリューション エクスプローラで、[MySCProject] ノードを右クリックし、[配置] をクリックします。

    指定したターゲットにデータベースが配置されます。

次に行う作業

データベース プロジェクトと一緒に XSD ファイルをバージョン管理にチェックインする必要があります。

参照

処理手順

方法 : データベース プロジェクトに参照を追加する

概念

Database Edition の用語の概要

XML スキーマ コレクションを使用するデータベースのチーム開発の開始