MySQLサポートされているデータ型は何ですか?MySQLのデータ型の詳細
MySQL データ型
MySQL で定義されたデータ フィールドのタイプは、データベースの最適化にとって非常に重要です。
MySQL はさまざまな型をサポートしています。これらは、数値型、日付/時刻型、文字列 (文字) 型の XNUMX つのカテゴリに大別できます。
数値型
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) | 小さい整数値 |
小型 | 2バイト | (-32 768、32 767) | (0, 65 535) | 大きな整数値 |
ミディアムミント | 3バイト | (-8 388 608、8 388 607) | (0, 16 777 215) | 大きな整数値 |
INT または INTEGER | 4バイト | (-2 147 483 648、2 147 483 647) | (0, 4 294 967 295) | 大きな整数値 |
BIGINT | 8バイト | (-9 233 372 036 854 775 808、9 223 372 036 854 775 807) | (0, 18 446 744 073 709 551 615) | 非常に大きな整数値 |
FLOAT | 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), 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | 0、(2.225 073 858 507 201 4 E-308、1.797 693 134 862 315 7 E+308) | 倍精度 浮動小数点値 |
10進数 | DECIMAL(M,D) の場合、M>D の場合は M+2、そうでない場合は D+2 | MとDの値に依存します | MとDの値に依存します | 小数値 |
日時型
時刻の値を表す日付と時刻の型は、DATETIME、DATE、TIMESTAMP、TIME、および YEAR です。
各タイプには、有効な値の範囲と、MySQL が表現できない無効な値を指定するときに使用される「ゼロ」値があります。
TIMESTAMP 型には、後述する独自の自動更新機能があります。
タイプ | サイズ (バイト) | 範囲 | 書式 | 用途 |
---|---|---|---|---|
DATE | 3 | 1000-01-01/9999-12-31 | YYYY-MM-DD | 日付値 |
タイム | 3 | ‘-838:59:59'/'838:59:59' | HH:MM:SS | 時間値または期間 |
YEAR | 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/2037 年某时 | YYYYMMDD HHMMSS | 日付と時刻の混合値、タイムスタンプ |
文字列型
文字列型は、CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM、および SET を参照します。このセクションでは、これらの型がどのように機能し、クエリでどのように使用するかについて説明します。
タイプ | サイズ | 用途 |
---|---|---|
CHAR | 0 ~ 255 バイト | 固定長文字列 |
VARCHAR | 0 ~ 65535 バイト | 可変長文字列 |
小さな塊 | 0 ~ 255 バイト | 最大 255 文字のバイナリ文字列 |
小さなテキスト | 0 ~ 255 バイト | 短いテキスト文字列 |
BLOB | 0 ~ 65 535 バイト | バイナリ形式の長いテキスト データ |
TEXT | 0 ~ 65 535 バイト | 長いテキスト データ |
ミディアムブロブ | 0-16 777 215 バイト | バイナリ形式の中文字列データ |
中文 | 0-16 777 215 バイト | 中程度の長さのテキストデータ |
ロングブロブ | 0 ~ 4 294 967 295 バイト | バイナリ形式の非常に大きなテキスト データ |
長いテキスト | 0 ~ 4 294 967 295 バイト | 非常に大きなテキスト データ |
CHAR 型と VARCHAR 型は似ていますが、保存と取得の方法が異なります。また、最大長と末尾のスペースが保持されるかどうかも異なります。格納または取得中に大文字と小文字の変換は行われません。
BINARY および VARBINARY クラスは、非バイナリ文字列の代わりにバイナリ文字列を含むことを除いて、CHAR および VARCHAR に似ています。つまり、文字列ではなくバイト文字列が含まれています。これは、文字セットがないことを意味し、並べ替えと比較は列値バイトの数値に基づいています。
BLOB は、可変量のデータを保持できるバイナリ ラージ オブジェクトです。TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB の 4 つの BLOB タイプがあります。保持できる値の最大長が異なるだけです。
TEXT タイプには、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT の 4 つがあります。これらは 4 つの BLOB タイプに対応し、最大長とストレージ要件は同じです。
Hope Chen Weiliang ブログ ( https://www.chenweiliang.com/ ) 共有 "MySQL でサポートされているデータ型は何ですか? MySQL のデータ型の詳細な説明」を参照してください。
この記事のリンクを共有することを歓迎します。https://www.chenweiliang.com/cwl-466.html
Chen WeiliangのブログのTelegramチャンネルへようこそ。最新のアップデートを入手できます!
📚 このガイドには非常に価値のある内容が含まれています。🌟これはめったにない機会です、お見逃しなく! ⏰⌛💨
気に入ったらシェア&いいね!
あなたの共有といいねは、私たちの継続的な動機です!