T-SQL-データ型
SQL Serverデータ型は、任意のオブジェクトのデータ型を指定する属性です。SQL Serverでは、各列、変数、および式に関連するデータ型があります。これらのデータ型は、テーブルの作成時に使用できます。要件に基づいて、テーブル列の特定のデータ型を選択できます。
SQL Serverは、使用するデータ型の他のカテゴリを含む7つのカテゴリを提供します。
正確な数値タイプ
タイプ | から | に |
---|---|---|
bigint | -9,223,372,036,854,775,808 | 9,223,372,036,854,775,807 |
int | -2,147,483,648 | 2,147,483,647 |
smallint | -32,768 | 32,767 |
tinyint | 0 | 255 |
ビット | 0 | 1 |
10進数 | -10 ^ 38 +1 | 10 ^ 38 –1 |
数値 | -10 ^ 38 +1 | 10 ^ 38 –1 |
お金 | -922,337,203,685,477.5808 | +922,337,203,685,477.5807 |
smallmoney | -214,748.3648 | +214,748.3647 |
数値と小数は固定精度とスケールのデータ型であり、機能的には同等です。
おおよその数値タイプ
タイプ | から | に |
---|---|---|
浮く | -1.79E + 308 | 1.79E + 308 |
リアル | -3.40E + 38 | 3.40E + 38 |
日付と時刻のタイプ
タイプ | から | に |
---|---|---|
datetime(3.33ミリ秒の精度) |
1753年1月1日 | 9999年12月31日 |
smalldatetime(1分精度) |
1900年1月1日 | 2079年6月6日 |
date(1日の精度。SQLServer2008で導入) |
0001年1月1日 | 9999年12月31日 |
datetimeoffset(100ナノ秒の精度。SQLServer2008で導入) |
0001年1月1日 | 9999年12月31日 |
datetime2(100ナノ秒の精度。で導入されました SQL Server 2008) |
0001年1月1日 | 9999年12月31日 |
time(100ナノ秒の精度。で導入されました SQL Server 2008) |
00:00:00.0000000 | 23:59:59.9999999 |
文字列
シニア番号 | タイプと説明 |
---|---|
1 | char 最大長が8,000文字の固定長の非Unicode文字データ。 |
2 | varchar 最大8,000文字の可変長の非Unicodeデータ。 |
3 | Varchar (max) 最大長が231文字の可変長の非Unicodeデータ(SQL Server 2005で導入)。 |
4 | text 最大長が2,147,483,647文字の可変長の非Unicodeデータ |
Unicode文字列
シニア番号 | タイプと説明 |
---|---|
1 | nchar 最大長が4,000文字の固定長Unicodeデータ。 |
2 | nvarchar 最大4,000文字の可変長Unicodeデータ。 |
3 | Nvarchar (max) 2つの最大長を有する可変長Unicodeデータ30(SQL Server 2005で導入された)文字。 |
4 | ntext 最大長が1,073,741,823文字の可変長Unicodeデータ。 |
バイナリ文字列
シニア番号 | タイプと説明 |
---|---|
1 | binary 最大長が8,000バイトの固定長のバイナリデータ。 |
2 | varbinary 最大長が8,000バイトの可変長バイナリデータ。 |
3 | varbinary(max) 2つの最大長を有する可変長のバイナリデータ31(SQL Server 2005で導入された)バイト。 |
4 | image 最大長が2,147,483,647バイトの可変長バイナリデータ。 |
その他のデータ型
sql_variant − text、ntext、timestampを除く、SQLServerでサポートされているさまざまなデータ型の値を格納します。
timestamp −行が更新されるたびに更新されるデータベース全体の一意の番号を格納します。
uniqueidentifier −グローバル一意識別子(GUID)を格納します。
xml−XMLデータを格納します。XMLインスタンスを列または変数に格納できます(SQL Server 2005で導入)。
cursor −カーソルへの参照。
table −後で処理するために結果セットを保存します。
hierarchyid −階層内の位置を表すために使用される可変長のシステムデータ型(SQL Server 2008で導入)。