English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQL Serverデータ型

以下のセクションでは、SQL Serverがサポートするデータ型について説明します。

SQL Serverデータ型

Microsoft SQL Serverがサポートするデータ型は、主に3つの主要カテゴリに分類できます:文字列数字および日付/時間データ型。

文字列データ型

文字列データ型は、名前、住所、説明やアルファベットと数字を含む値、バイナリデータ(例えば画像やオーディオファイル)を保存するために通常使用されます。

データ型を説明します。
char(n)定長の文字列を保存します。最大長さは8、000文字です。
varchar(n)長さが可変の文字列を保存します。最大長さは8、000文字です。
varchar(max)長さが可変の文字列を保存します。ここでは、maxは最大保存サイズを意味します2 varbinary(max)
text長さが可変の文字列を保存します。最大保存サイズは2 varbinary(max)
nchar固定長さのUnicode文字列を保存します。最大長さは4、000文字です。
nvarchar可変長さのUnicode文字列を保存します。最大長さは4、000文字です。
nvarchar(max)可変長さのUnicode文字列を保存します。ここでは、maxは最大保存サイズを意味します2 varbinary(max)
ntext可変長さのUnicode文字列を保存します。最大保存サイズは2 varbinary(max)
binary(n)固定長さのバイナリデータを保存します。最大保存サイズは8image
varbinary(n)GBです。8image
varbinary(max)n2 varbinary(max)
可変長のバイナリデータを格納します。ここでは、maxは最大格納サイズがGBです。8image

可変長のバイナリデータを格納します。最大格納サイズは

、000バイトを格納します。

データ型を説明します。
数値データ型数値データ型は、価格、給与などのデータを格納するために通常使用されます。1bitを格納できます。です。
、0またはNULL255tinyint
の範囲の整数値を格納します。から-32、768から32、767int
smallintから-2、147、483、648から2、147、483、647int
bigintから-9、223、372,036、854、775、808から9、223、372,036、854、775、807)の整数値です。
decimal(pおよび)固定の精度と小数桁数を格納します。有効値は10 ^38 +1から10 ^38-1。詳細情報については、以下を参照してください。
numeric(pおよび)numericデータ型は機能的にはdecimalと同じです。
smallmoneyを使用して、正確に通貨の値や範囲を持つ通貨の値を格納できます。-214、748.3648から214、748.3647です。
moneyを使用して、正確に通貨の値や範囲を持つ通貨の値を格納できます。-922、337、203、685、477.5808から922、337、203、685、477.5807です。
float(n)で格納できます。-1.79E + 308から-2.23E-308、0および2.23E-308から1.79E + 308です。
realで格納できます。-3.40E + 38から-1.18E-38、0および1.18E-38から3.40E + 38です。

声明する際にdecimalやnumericカラムの精度と小数桁数を指定できます。例えば、decimal(p,s)やnumeric(p,s)で、pまたは精度は小数点の左側と右側を含む最大桁数を示します。精度は1から38です。18です。

の値です。デフォルトの精度はおよびs

またはscaleは、小数点の右側に格納できる最大桁数を示します。pからこの数字を引くことで、小数点の左側に格納できる最大桁数を決定します。小数桁数は0からpの間の値でなければなりません。デフォルトの比例は0です。6、2)カラムは、6桁の数字と2桁の小数を持つどんな値も格納できます。例えば、price decimal(-9999.99から9999.99の値の間を格納できます。

日付と時刻データ型

日付と時刻データ型は、生年月日、雇用日、テーブル内でレコードを作成または更新した日付と時刻などのデータを格納するために通常使用されます。

データ型を説明します。
date日付の値を格納し、範囲が0001-01-01(1月1日まで、1月)から
9999-12-31(9999年12月31日)。
time一日の中の時間を格納し、精度が100ナノ秒。有効値は00:00:00.0000000から23:59:59.9999999です。
datetime日付と時刻の値を格納し、精度が3.33ミリ秒の有効な日付範囲datetimeは、1753-01-01(1753年1月1日)から9999-12-31(9999年12月31日)。
datetime2

datetime2datetimeデータ型の拡張であり、より大きな日付範囲を持っています。datetime2の有効な日付範囲は0001-01-01 (January 1、 1)から9999-12-31 (December 31、 9999)です。

smalldatetimeで1分の精度を持つ日付と時刻の値を格納します。smalldatetimeの有効な日付範囲は、1900-01-01(1900年1月1日)から
2079-06-06(2079年6月6日)。
datetimeoffsetとdatetime2時区偏移量を追加します。デフォルトのフォーマットはYYYY-MM-DD hh:mm:ss[.nnnnnnn] [{+|-}hh:mm]。時区偏移の有効範囲は-14:00から+14:00。
timestampSQL Serverでは、timestampはrowversionデータ型の同義語であり、データベース内で自動的にユニークなバイナリ数を生成します。 rowversionは通常、バージョンマークとしてテーブルの行に使用されます。

注意:rowversion列を持つ行をテーブルに挿入または修正するたびに、データベースのrowversion値が自動的にrowversion列に挿入されます。 一つのテーブルにはrowversion列が一つだけあります。