次の方法で共有


データベース オブジェクトとサーバー オブジェクトのテンプレートの概要

データベース プロジェクトに項目を追加すると、その項目の既定の定義が、プロジェクト項目テンプレートと呼ばれるプロトタイプから生成されます。 既存のテンプレートをカスタマイズできます。 チームが使用するすべてのテンプレートにコメントを追加する場合などに、既存のテンプレートをカスタマイズできます。 類似のオブジェクトを作成する場合、別のデータベース内に作成する場合でも、カスタム テンプレートを作成しておくと手間が省けます。

テンプレートの操作

次のトピックでは、プロジェクト項目テンプレートの概要、およびプロジェクト項目テンプレートを使用して独自のデータベース プロジェクト項目を作成する方法について説明しています。

注意

データベース プロジェクトからプロジェクト テンプレートまたは項目テンプレートをエクスポートすると、カスタム テンプレートが [新しい項目の追加] ダイアログ ボックスの [Visual Studio テンプレート] セクションの [マイ テンプレート] に表示されます。 このテンプレートは、他のデータベース オブジェクトと共には表示されません。また、[新しい項目の追加] ダイアログ ボックスの [Visual Studio にインストールされたテンプレート] にも表示されません。

データベース オブジェクト テンプレート

データベース オブジェクトのテンプレートは、Visual Studio のインストール フォルダー内の ItemTemplates フォルダーと Items フォルダーにあります (D:\Program Files\Microsoft Visual Studio 10.0\VSTSDB\Extensions\SqlServer\ItemTemplates\ など)。データベース スキーマ プロバイダーごとに独自のテンプレートがあります。 たとえば、SQL Server の各バージョンには Table テンプレートがあります。

データベース オブジェクト テンプレートの置き換え可能なパラメーター

データベース オブジェクト テンプレートの .sql ファイル内では、次の置き換え可能なパラメーターを使用できます。

  • $ChildObjectName$
    子データベース オブジェクトの名前を格納します。 このパラメーターは、インデックスなどの項目のテンプレートを定義するときに使用します。インデックスでは、定義するオブジェクトには、別のデータベース オブジェクトとの親子関係が設定されています。

  • $ParentObjectName$
    親データベース オブジェクトの名前を格納します。 このパラメーターは、インデックスなどの項目のテンプレートを定義するときに使用します。インデックスでは、定義するオブジェクトには、別のデータベース オブジェクトとの子親関係が設定されています。

  • $rawname$
    ユーザーが [新しい項目の追加] ダイアログ ボックスのオブジェクトに付ける未変更の名前を格納します。 このパラメーターは、ユーザー、ロールなどのオブジェクトのテンプレートを定義するときに使用します。

  • $SchemaName$
    データベース スキーマの名前を格納します。 このパラメーターは、インデックスなどの項目のテンプレートを定義するときに使用します。インデックスでは、定義するオブジェクトには、別のデータベース オブジェクトとの子親関係が設定されています。 親オブジェクト名には、スキーマ名をプレフィックスとして指定する必要があります。 たとえば、"ALTER TABLE [$SchemaName$].[$ParentObjectName$] ADD CONSTRAINT [$ChildObjectName$] UNIQUE (column_1)" のように指定できます。

  • $SchemaQualifiedObjectName$
    スキーマで修飾されたオブジェクト名を格納します。 たとえば、テーブルの作成スクリプトでは、"CREATE TABLE $SchemaQualifiedObjectName$ (col1 INT NOT NULL)" のように使用します。

参照

その他の技術情報

Visual Studio テンプレート

プロジェクトと項目テンプレートの検索および共有

詳細なテンプレート手順

Visual Studio テンプレート参照