サーチ…


前書き

ユーザ定義のテーブルタイプ(略してUDT)は、ユーザがテーブル構造を定義することを可能にするデータタイプである。ユーザー定義の表タイプは、主キー、固有制約およびデフォルト値をサポートします。

備考

UDTには次の制限があります。

  • 構造化されたユーザー定義型のテーブルまたはフィールドの列として使用することはできません
  • インデックスがUDTでPRIMARY KEYまたはUNIQUE制約を作成した結果でない限り、クラスタ化されていないインデックスをUDTで作成することはできません
  • UDT定義は作成後に変更できません

主キーでもある単一のint列を持つUDTを作成する

CREATE TYPE dbo.Ids as TABLE
(
    Id int PRIMARY KEY
)

複数の列を持つUDTの作成

CREATE TYPE MyComplexType as TABLE
(
    Id int,
    Name varchar(10)
)

ユニーク制約付きのUDTの作成:

CREATE TYPE MyUniqueNamesType as TABLE
(
    FirstName varchar(10),
    LastName varchar(10),
    UNIQUE (FirstName,LastName)
)

注:ユーザー定義の表タイプの制約には名前を付けることはできません。

主キーとデフォルト値の列を使用してUDTを作成するには:

CREATE TYPE MyUniqueNamesType as TABLE
(
    FirstName varchar(10),
    LastName varchar(10),
    CreateDate datetime default GETDATE()
    PRIMARY KEY (FirstName,LastName)
)


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow