データ型 (データベース エンジン)

データを格納するオブジェクトには、そのオブジェクトに格納できるデータの種類 (文字、整数、バイナリなど) を定義するデータ型が関連付けられています。次のオブジェクトにはデータ型が関連付けられています。

  • テーブルやビュー内の列。
  • ストアド プロシージャのパラメータ。
  • 変数。
  • 特定のデータ型のデータ値を 1 つ以上返す Transact-SQL 関数。
  • リターン コードを返すストアド プロシージャ。リターン コードは必ず integer 型になります。

オブジェクトにデータ型を割り当てると、次の 4 つのオブジェクト属性が定義されます。

  • オブジェクトに含まれるデータの種類。
  • 格納値の長さまたはサイズ。
  • 数値の有効桁数 (数値データ型のみ)。
  • 数値の小数点以下桁数 (数値データ型のみ)。

データ型の有効桁数、小数点以下桁数、および長さの詳細については、「有効桁数、小数点以下桁数、および長さ (Transact-SQL)」を参照してください。

Transact-SQL には次のシステム データ型があります。

bigint

binary

bit

char

cursor

datetime

decimal

float

image

int

money

nchar

ntext

numeric

nvarchar

real

smalldatetime

smallint

smallmoney

sql_variant

table

text

timestamp

tinyint

varbinary

varchar

uniqueidentifier

xml

 

 

Microsoft SQL Server 2005 に格納されるデータはすべて、これらの基本データ型のいずれかとの互換性が必要です。cursor データ型は、テーブル列に割り当てることができない唯一のシステム データ型です。このデータ型は、変数およびストアド プロシージャ パラメータにだけ使用できます。

一部の基本データ型にはシノニムがあります。たとえば、rowversiontimestamp のシノニムであり、national character varyingnvarchar のシノニムです。シノニムの動作の詳細については、「データ型のシノニム (Transact-SQL)」を参照してください。

次の 2 種類のユーザー定義データ型を作成することもできます。

  • 基本データ型から作成される別名データ型。このようなユーザー定義データ型を使うと、オブジェクト内に格納する値の種類を説明できるような名前をデータ型に与えることができます。これにより、プログラマやデータベース管理者が、このデータ型で定義されたオブジェクトの用途を理解しやすくなります。次に例を示します。

    -- Create a birthday datetype that allows nulls.
    CREATE TYPE birthday
    FROM datetime NULL
    GO
    -- Create a table using the new data type.
    CREATE TABLE employee (emp_id char(5), emp_first_name char(30), emp_last_name char(40), emp_birthday birthday)
    

    詳細については、「別名データ型を使用した作業」を参照してください。

  • マネージ コードで作成されたデータ型に基づいて作成され、SQL Server アセンブリにアップロードされる CLR ユーザー定義データ型。詳細については、「CLR ユーザー定義型の使用」を参照してください。

参照

概念

バイナリ データの使用
char 型と varchar 型のデータの使用
日時データの使用
整数データの使用
小数型データ、浮動小数型データ、および実数型データの使用
金額データの使用
大きな値のデータ型の使用
text 型データと image 型データの使用
uniqueidentifier データの使用
特殊データの使用
Unicode データの使用
データ型の変換 (データベース エンジン)

その他の技術情報

CREATE TABLE (Transact-SQL)
CREATE TYPE (Transact-SQL)
データ型 (Transact-SQL)
テーブルのデザイン
sp_addtype (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手