MySQL で定義されるデータ フィールドのタイプは、データベースの最適化にとって非常に重要です。
MySQL は複数の型をサポートしており、数値型、日付/時刻型、および文字列 (文字) 型の 3 つのカテゴリに大まかに分類できます。
推奨チュートリアル: MySQL 入門ビデオ チュートリアル
1. 数値型
MySQL は、すべての標準 SQL 数値データ型をサポートします。
これらの型には、厳密な数値データ型 (INTEGER、SMALLINT、DECIMAL、および NUMERIC) と近似数値データ型 (FLOAT、REAL、および DOUBLE PRECISION) が含まれます。
キーワード INT は INTEGER の同義語で、キーワード DEC は DECIMAL の同義語です。
BIT データ型はビット フィールド値を保存し、MyISAM、MEMORY、InnoDB、BDB テーブルをサポートします。
SQL 標準の拡張として、MySQL は整数型 TINYINT、MEDIUMINT、および BIGINT もサポートします。次の表は、各整数型に必要なストレージと範囲を示しています。
タイプ | サイズ | 範囲 (符号付き) | 範囲 (符号なし) | 使用 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 バイト | (-128,127) | (0,255) | 小さい整数値 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 バイト | (-32 768, 32 767) | (0, 65 535 ) | Large整数値 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 バイト | (-8 388 608, 8 388 607) | (0,16 777 215 ) | 大きな整数値 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 バイト | (-2 147 483 648、2 147 483 647 ) | (0, 4 294 967 295) | 大きな整数値 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 バイト | (-9,223,372,036,854,775,808, 9 223 372 036 854 775 807) | (0, 18 446 744 073 709 551 615) | 大きな整数値 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 バイト | (-3.402 823 466 E 38, -1.175 494 351 E-38), 0, (1.175 494 351 E-38, 3.402 823 466 351 E 38) | 0, (1.175 494 351 E-38, 3.402 823 466 E 38) | 単精度 | 浮動小数点値|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 バイト | (-1.797 693 134 862 315 7 E-308、-2.225 073 858 507 201 4 E-308) ) E 308 ) | 倍精度 | 浮動小数点値
DECIMAL |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MとDの値に依存 | #MとDの値に依存#10進数値 | # |
タイプ | サイズ (バイト) |
範囲 | 形式 | 目的 |
---|---|---|---|---|
3 | 1000-01-01/9999-12-31 | YYYY-MM-DD | 日付値 | |
3 | '-838:59:59'/'838:59:59' | HH:MM:SS | 時間値または期間 | |
1 | 1901/2155 | YYYY | 年の値 | |
8 | 1000-01-01 00:00: 00/ 9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 日付と時刻の値が混在しています | |
4 | 1970-01-01 00:00:00/2038終了時刻は北京時間 2147483647 秒です2038-1-19 11:14:07、2038 年 1 月 19 日 03:14:07 am GMT | YYYYMMDD HHMMSS混合日付と時刻の値、タイムスタンプ |
サイズ | 使用 | |
---|---|---|
0 -255 バイト | 固定長文字列 | |
0 ~ 65535 バイト | 可変長文字列 | |
0-255 バイト | 255 文字以下のバイナリ文字列 | |
0 ~ 255 バイト | 短いテキスト文字列 | |
0 ~ 65 535 バイト | バイナリ形式の長いテキスト データ | |
0-65 535 バイト | 長いテキスト データ | |
0-16 777 215 バイト | バイナリ形式の中長テキスト データ | |
0-16 777 215 バイト | 中程度の長さのテキスト データ | |
0-4 294 967 295 バイト | バイナリ形式の非常に大きなテキスト データ | |
0-4 294 967 295 バイト | 非常に大きなテキスト データ |
BINARY および VARBINARY は、非バイナリ文字列ではなくバイナリ文字列を含むことを除いて、CHAR および VARCHAR と似ています。つまり、文字列ではなくバイト列が含まれます。これは、文字セットがなく、並べ替えと比較が列値バイトの数値に基づいて行われることを意味します。
BLOB は、可変量のデータを保持できるバイナリ ラージ オブジェクトです。 BLOB タイプには、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB の 4 つがあります。それぞれ対応できる保管範囲が異なります。
TEXT タイプには、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT の 4 種類があります。対応する 4 つの BLOB タイプは最大記憶長が異なり、実際の状況に応じて選択できます。
以上がデータベースのデータ型とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。