SQL データ型

Microsoft Access、MySQLおよびSQL Serverで使用されるデータタイプと範囲です。

Microsoft Access データタイプ

データタイプ 説明 保存
Text テキストまたはテキストと数値の組み合わせに使用されます。最大 255 文字です。  
Memo

memoは、より多くのテキストを保存するために使用されます。最大 65,536 文字を保存できます。

注:memo フィールドに対してソートはできません。ただし、検索可能です。

 
Byte 0 から 255 の数字を許可します。 1 バイト
Integer -32,768 から 32,767 までの数字を許可します。 2 バイト
Long -2,147,483,648 から 2,147,483,647 までのすべての数字を許可します。 4 バイト
Single 単精度浮動小数点数。ほとんどの小数を処理します。 4 バイト
Double 双精度浮動小数点数。ほとんどの小数を処理します。 8 バイト
Currency

通貨に使用されます。15桁の元に加えて、4桁の小数があります。

ヒント:どこの国の通貨を使用するかを選択できます。

8 バイト
AutoNumber AutoNumber フィールドは、通常 1 から始まるように各レコードに数字を自動で割り当てます。 4 バイト
Date/Time 日付と時間に使用されます。 8 バイト
Yes/No

論理フィールドで、Yes/No、True/False または On/Off として表示できます。

コードでは、定数 True と False(1 と 0 に等しい)を使用します。

注:Yes/No フィールドでは NULL 値は許可されません。

1 ビット
Ole Object 画像、オーディオ、ビデオ、または他のBLOBs(バイナリ大オブジェクト)を保存できます。 最大 1GB
ハイパーリンク 他のファイルへのリンク、ウェブページを含みます。  
Lookup Wizard 以下のリストから選択できるオプションリストを作成することができます。 4 バイト

MySQLデータタイプ

MySQLでは、主に3つの主要なタイプがあります:テキスト、数値および日付/時間タイプ。

テキストタイプ:

データタイプ 説明
CHAR(DECIMAL() 固定長の文字列(アルファベット、数字および特殊文字を含むことができます)を保存します。括弧内で文字列の長さを指定します。最大 255 文字です。
VARCHAR(DECIMAL()

可変長の文字列(アルファベット、数字および特殊文字を含むことができます)を保存します。括弧内で文字列の最大長さを指定します。最大 255 文字です。

コメント:値の長さが255より大きい場合、TEXT类型に変換されます。

TINYTEXT 最大255文字の文字列を保存します。
TEXT 最大65,535文字の文字列を保存します。
BLOB BLOBs(バイナリ大オブジェクト)用。最大65,535バイトのデータを保存します。
MEDIUMTEXT 最大16,777,215文字の文字列を保存します。
MEDIUMBLOB BLOBs(バイナリ大オブジェクト)用。最大16,777,215バイトのデータを保存します。
LONGTEXT 最大4,294,967,295文字の文字列を保存します。
LONGBLOB BLOBs(バイナリ大オブジェクト)用。最大4,294,967,295バイトのデータを保存します。
ENUM(x,y,z,etc.)

可能な値のリストを入力することを許可します。ENUMリストには最大65535個の値を列挙できます。リストに存在しない値が挿入された場合、空値が挿入されます。

コメント:これらの値は入力した順序で保存されます。

以下の形式で可能な値を入力できます:ENUM('X','Y','Z')

SET ENUMと同様に、SETは最大64個のリスト項目を含むことができますが、SETは1つ以上の値を保存できます。

Number タイプ:

データタイプ 説明
TINYINT(DECIMAL() -128 から 127 まで通常。0 から 255 まで無符号*。括号で最大桁数を指定する。
SMALLINT(DECIMAL() -32768 から 32767 まで通常。0 から 65535 まで無符号*。括号で最大桁数を指定する。
MEDIUMINT(DECIMAL() -8388608 から 8388607 まで通常。0 から 16777215 まで無符号*。括号で最大桁数を指定する。
INT(DECIMAL() -2147483648 から 2147483647 まで通常。0 から 4294967295 まで無符号*。括号で最大桁数を指定する。
BIGINT(DECIMAL() -9223372036854775808 から 9223372036854775807 まで通常。0 から 18446744073709551615 まで無符号*。括号で最大桁数を指定する。
FLOAT(DECIMAL(,size) 浮動小数点を持つ小数。括号で最大桁数を指定する。dパラメータで小数点以下の最大桁数を指定する。
DOUBLE(DECIMAL(,size) DOUBLE(
带有浮动小数点的大数字。括号中规定最大位数。在 d 参数中规定小数点右侧的最大位数。DECIMAL(,size) d

作为字符串存储的 DOUBLE 类型,允许固定的小数点。

Date 型:

データタイプ 説明
*これらの整数型には追加のオプション UNSIGNED があります。通常、整数は負数または正数でできます。UNSIGNED 属性を追加すると、範囲は 0 から始まるようになります。

DATE()

日付。形式:YYYY-MM-DD

コメント:サポート範囲は '1000-01-01' から '9999-12-31' です。

DATETIME()

*日付と時間の組み合わせ。形式:YYYY-MM-DD HH:MM:SS

コメント:サポート範囲は '1000-01-01 00:00:00' から '9999-12-31 23:59:59' です。

TIMESTAMP()

*時間スタンプ。TIMESTAMP 値は、Unix 紀元('1970-01-01 00:00:00' UTC)から現在までの説明を格納します。形式:YYYY-MM-DD HH:MM:SS

TIME()

時間。形式:HH:MM:SS

コメント:サポート範囲は '-838:59:59' から '838:59:59' です。

YEAR()

2桁または4桁の形式の年。

コメント:4桁形式で許可される値:1901 から 2155。2桁形式で許可される値:70 から 69、1970 から 2069 を示します。

* DATETIME と TIMESTAMP は同じ形式で返されるが、動作は非常に異なる。INSERT または UPDATE クエリでは、TIMESTAMP は自動的に現在の日付と時間を設定する。TIMESTAMP はまた、YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD、YYMMDD などの異なる形式も受け入れます。

SQL Server データ型

Character 文字列:

データタイプ 説明 保存
char(n) 固定長の文字列。最大 8,000 文字。 n
varchar(n) 可変長の文字列。最大 8,000 文字。  
varchar(max) 可変長の文字列。最大 1,073,741,824 文字。  
text 可変長の文字列。最大 2GB の文字データ。  

Unicode 文字列:

データタイプ 説明 保存
nchar(n) 固定長の Unicode データです。最大 4,000 つの文字です。  
nvarchar(n) 可変長の Unicode データです。最大 4,000 つの文字です。  
nvarchar(max) 可変長の Unicode データです。最大 536,870,912 つの文字です。  
ntext 可変長の Unicode データです。最大 2GB 字符データです。  

Binary タイプ:

データタイプ 説明 保存
bit 0、1 または NULL を許可します。  
binary(n) 固定長のバイナリデータです。最大 8,000 バイトです。  
varbinary(n) 可変長のバイナリデータです。最大 8,000 バイトです。  
varbinary(max) 可変長のバイナリデータです。最大 2GB バイトです。  
image 可変長のバイナリデータです。最大 2GB です。  

Number タイプ:

データタイプ 説明 保存
tinyint 0 から 255 までのすべての数字を許可します。 1 バイト
smallint -32,768 から 32,767 までのすべての数字を許可します。 2 バイト
int -2,147,483,648 から 2,147,483,647 までのすべての数字を許可します。 4 バイト
bigint -9,223,372,036,854,775,808 から 9,223,372,036,854,775,807 までのすべての数字を許可します。 8 バイト
decimal(p,s)

固定精度と比例の数字です。-10^38 +1 から 10^38 -1 までの数字を許可します。

p パラメータは、保存できる最大桁数(小数点の左側と右側)を示します。p は 1 から 38 までの値でなければなりません。デフォルトは 18 です。

s パラメータは、小数点の右側に保存できる最大桁数を示します。s は 0 から p までの値でなければなりません。デフォルトは 0 です。

5-17 バイト
numeric(p,s)

固定精度と比例の数字です。-10^38 +1 から 10^38 -1 までの数字を許可します。

p パラメータは、保存できる最大桁数(小数点の左側と右側)を示します。p は 1 から 38 までの値でなければなりません。デフォルトは 18 です。

s パラメータは、小数点の右側に保存できる最大桁数を示します。s は 0 から p までの値でなければなりません。デフォルトは 0 です。

5-17 バイト
smallmoney -214,748.3648 と 214,748.3647 の間の通貨データです。 4 バイト
money -922,337,203,685,477.5808 と 922,337,203,685,477.5807 の間の通貨データです。 8 バイト
float(n)

-1.79E + 308 から 1.79E + 308 の浮動小数点の精度の数字データです。

パラメータ n は、このフィールドが 4 バイトか 8 バイトを保存するかを示します。float(24) は 4 バイトを保存し、float(53) は 8 バイトを保存します。n のデフォルト値は 53 です。

4 または 8 バイト
real -3.40E + 38 から 3.40E + 38 までの浮動小数点数データを保存します。 4 バイト

Date 型:

データタイプ 説明 保存
datetime 1753 年 1 月 1 日から 9999 年 12 月 31 日まで、3.33 ミリ秒の精度です。 8 バイト
datetime2 1753 年 1 月 1 日から 9999 年 12 月 31 日まで、100 ナノ秒の精度です。 6-8 バイト
smalldatetime 1900 年 1 月 1 日から 2079 年 6 月 6 日まで、1 分の精度です。 4 バイト
date 日期のみを保存します。0001 年 1 月 1 日から 9999 年 12 月 31 日までです。 3 バイト
time 時間のみを保存します。精度は 100 ナノ秒です。 3-5 バイト
datetimeoffset datetime2 と同じで、時区オフセットが追加されます。 8-10 バイト
timestamp ユニークな数字を保存し、行が作成または変更されるたびに更新されます。timestamp は内部クロックに基づいており、実際の時間に対応しません。各テーブルには timestamp 変数が 1 つのみです。  

その他のデータタイプ:

データタイプ 説明
sql_variant text、ntext、timestamp 以外のデータタイプのデータを最大 8,000 バイトで保存します。
uniqueidentifier ユニークな識別子 (GUID) を保存します。
xml XML フォーマットデータを保存します。最大 2GB。
cursor データベース操作に使用されるポインタの参照を保存します。
table 結果セットを保存し、後で処理します。