ホームページ  >  記事  >  バックエンド開発  >  mysql フィールド タイプの説明_PHP チュートリアル

mysql フィールド タイプの説明_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:54:49732ブラウズ

MySQL は多数のカラム タイプをサポートしており、数値タイプ、日付と時刻のタイプ、文字列 (文字) タイプの 3 つのカテゴリに分類できます。このセクションでは、最初に使用可能な型の概要を示し、各列型のストレージ要件を要約し、次に各クラスの型の性質についてより詳細に説明します。概要は意図的に簡略化されており、より詳細な説明では、値を指定できる許可された形式など、特定の列タイプに関する追加情報を考慮する必要があります。

MySQL でサポートされている列の型を以下に示します。説明では次のコード文字が使用されます:

M
最大表示サイズを示します。法定表示の最大サイズは 255 です。
D
浮動小数点型に適用され、小数点以下の桁数を示します。可能な最大値は 30 ですが、M-2 を超えてはなりません。
角括弧 (「[」と「]」) は、オプションの型修飾子の一部を示します。

ZEROFILL を指定すると、MySQL は自動的に UNSIGNED 属性をカラムに追加することに注意してください。

TINYINT[(M)] [UNSIGNED] [ZEROFILL]
非常に小さい整数。符号付きの範囲は -128 ~ 127、符号なしの範囲は 0 ~ 255 です。


SMALLINT[(M)] [UNSIGNED] [ZEROFILL]
小さい整数。符号付きの範囲は -32768 ~ 32767、符号なしの範囲は 0 ~ 65535 です。

MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]
中サイズの整数。符号付きの範囲は -8388608 ~ 8388607、符号なしの範囲は 0 ~ 16777215 です。

INT[(M)] [UNSIGNED] [ZEROFILL]
通常サイズの整数。符号付きの範囲は -2147483648 ~ 2147483647、符号なしの範囲は 0 ~ 4294967295 です。

INTEGER[(M)] [UNSIGNED] [ZEROFILL]
これは INT の同義語です。

BIGINT[(M)] [UNSIGNED] [ZEROFILL]

大きな整数。符号付きの範囲は -9223372036854775808 ~ 9223372036854775807、符号なしの範囲は 0 ~

18446744073709551615 です。すべての算術演算は符号付き BIGINT または DOUBLE 値を使用して実行されるため、ビット関数を除き、9223372036854775807 (63 ビット) より大きい符号付き big 整数を使用しないでください。 2 つのパラメータが INTEGER 値の場合、-、+、および * は BIGINT 演算を使用することに注意してください。これは、2 つの大きな整数を乗算すると (または整数を返す関数で乗算すると)、結果が 9223372036854775807 より大きい場合、予期しない結果が得られる可能性があることを意味します。浮動小数点数は、符号なしではできません。単精度浮動小数点数の場合、精度は 24 以下です。倍精度浮動小数点数の場合、精度は 25 ~ 53 になります。FLOAT などの型は、符号なしです。および DOUBLE タイプについては、すぐに以下で説明します。 FLOAT(X) の範囲は、対応する FLOAT および DOUBLE と同じですが、表示サイズと小数点以下の桁数は未定義です。 MySQL 3.23 では、これは真の浮動小数点値です。以前の MySQL バージョンでは、FLOAT(precision) には常に小数点以下 2 桁がありました。この構文は、ODBC との互換性のために提供されています。

FLOAT[(M,D)] [ZEROFILL]
小さな (単精度) 浮動小数点数。署名を外すことはできません。許可される値は、-3.402823466E+38 ~ -1.175494351E-38、0、および 1.175494351E-38 ~ 3.402823466E+38 です。 M は表示幅、D は小数点以下の桁数です。引数なし、または引数が 1 つある FLOAT
DOUBLE[(M,D)] [ZEROFILL]
通常サイズ (倍精度) 浮動小数点数。署名を外すことはできません。許可される値は、-1.7976931348623157E+308 ~ -2.2250738585072014E-308、0 および 2.2250738585072014E-308 ~ 1.7976931348623157E+308 です。 M は表示幅、D は小数点以下の桁数です。引数のない DOUBLE または FLOAT(X) (25
DOUBLE PRECISION[(M,D)] [ZEROFILL]


REAL[(M,D)] [ZEROFILL]
これらは DOUBLE の同義語です。

DECIMAL[(M[,D])] [ZEROFILL]
アンパックされた浮動小数点数。署名を外すことはできません。 CHAR 列のように動作します。「非圧縮」とは、値の各ビットに 1 つの文字を使用して、数値が文字列として格納されることを意味します。小数点と負の数の場合、「-」記号は M では評価されません。 D が 0 の場合、値には小数点も小数部もありません。 DECIMAL 値の最大範囲は DOUBLE の場合と同じですが、特定の DECIMAL 列では、実際の範囲は M と D の選択によって制限される可能性があります。 D を省略した場合は 0 が設定されます。 M を省略した場合は 10 が設定されます。 MySQL 3.22 では、M パラメータに符号と小数点が含まれることに注意してください。

NUMERIC(M,D) [ZEROFILL]
これは DECIMAL の同義語です。

デート
デート。サポートされている範囲は「1000-01-01」から「9999-12-31」です。 MySQL は DATE 値を「YYYY-MM-DD」形式で表示しますが、文字列または数値を使用して DATE カラムに値を割り当てることができます。注: PHP で now() を使用して初期値を割り当てることができます。

DATETIME
日付と時刻の組み合わせ。サポートされている範囲は「1000-01-01 00:00:00」から「9999-12-31 23:59:59」です。 MySQL は DATETIME 値を「YYYY-MM-DD HH:MM:SS」形式で表示しますが、文字列または数値を使用して DATETIME カラムに値を割り当てることができます。

TIMESTAMP[(M)]
タイムスタンプ。範囲は「1970-01-01 00:00:00」から 2037 年のいつかまでです。MySQL は、M が 14 (または省略)、12、8、または 6 のいずれであるかに応じて、TIMESTAMP 値を YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD、または YYMMDD の形式で表示しますが、文字列または数値を使用して値を割り当てることができます。 TIMESTAMP列。 TIMESTAMP 列は、値を自分で割り当てないと、自動的に最新の操作の日付と時刻に設定されるため、INSERT または UPDATE 操作の日付と時刻を記録するのに役立ちます。 NULL 値を割り当てることで、現在の日付と時刻に設定できます。
時間
時間です。範囲は「-838:59:59」から「838:59:59」です。 MySQL は TIME 値を「HH:MM:SS」形式で表示しますが、文字列または数値を使用して TIME 列に値を割り当てることができます。

YEAR[(2|4)]
2 桁または 4 桁の形式の年 (デフォルトは 4 桁)。許可される値は 1901 ~ 2155、および 0000 (4 桁の年形式)、2 桁を使用する場合は 1970 ~ 2069 (70 ~ 69) です。 MySQL は YEAR 値を YYYY 形式で表示しますが、文字列または数値を YEAR カラムに割り当てることができます。 (YEAR 型は、MySQL 3.22 の新しい型です。)

CHAR(M) [BINARY]
固定長文字列は、保存されるとき、常に指定された長さの右側にスペースで埋められます。 M の範囲は 1 ~ 255 文字です。値が取得されると、末尾のスペースが削除されます。 CHAR 値は、BINARY キーワードが指定されていない限り、デフォルトの文字セットに従って大文字と小文字を区別しない方法で並べ替えおよび比較されます。 NATIONAL CHAR (短縮形 NCHAR) は、CHAR 列がデフォルトの文字セットを使用することを定義する ANSI SQL の方法です。これは MySQL のデフォルトです。 CHARはCHARACTERの略です。

[NATIONAL] VARCHAR(M) [BINARY]
可変長文字列。注: 末尾のスペースは、値が格納されるときに削除されます (これは ANSI SQL 仕様とは異なります)。 M の範囲は 1 ~ 255 文字です。 VARCHAR 値は、BINARY キーワード値が指定されていない限り、デフォルトの文字セットに従って大文字と小文字を区別しない方法で並べ替えおよび比較されます。 VARCHAR は CHARACTER VARYING の略です。

TINYBLOB

TINYTEXT
最大長が 255 (2^8-1) 文字の BLOB または TEXT 列。

BLOB
はバイナリ ファイルの処理に使用され、ファイルのアップロードに使用できます。

TEXT
最大長 65535 (2^16-1) 文字の BLOB または TEXT 列。

MEDIUMBLOB

MEDIUMTEXT
最大長が 16777215 (2^24-1) 文字の BLOB または TEXT 列。
LONGBLOB

LONGTEXT
BLOB または TEXT 列。最大長は 4294967295 (2^32-1) 文字です。

ENUM('value1','value2',...)
列挙。値「value1」、「value2」、...、または NULL のリストから選択された 1 つの値を持つ文字列オブジェクト。 ENUM には、最大 65535 個の異なる値を含めることができます。

SET('value1','value2',...)
セット。 0 個以上の値を持つことができる文字列オブジェクト。それぞれの値は値リスト 'value1'、'value2'、... から選択する必要があります。 SET には最大 64 のメンバーを含めることができます。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/318363.html技術記事 MySQL は多数のカラム タイプをサポートしており、数値タイプ、日付と時刻のタイプ、文字列 (文字) タイプの 3 つのカテゴリに分類できます。このセクションでは、まず利用可能なタイプの概要を説明し、最後に...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。