亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
MySQL 教程 / 數(shù)據(jù)類型

數(shù)據(jù)類型

列的數(shù)據(jù)類型定義了該列可以保存的值:整數(shù)、字符、貨幣、日期和時間、二進(jìn)制等。


MySQL 數(shù)據(jù)類型(8.0 版)

數(shù)據(jù)庫表中的每一列都必須有名稱和數(shù)據(jù)類型。

SQL 開發(fā)人員必須在創(chuàng)建表時決定將在每列中存儲的數(shù)據(jù)類型。 數(shù)據(jù)類型是 SQL 了解每列中預(yù)期的數(shù)據(jù)類型的指南,它還標(biāo)識 SQL 將如何與存儲的數(shù)據(jù)交互。

在 MySQL 中有三種主要的數(shù)據(jù)類型:字符串、數(shù)字、日期和時間。

字符串?dāng)?shù)據(jù)類型

數(shù)據(jù)類型 描述
CHAR(size) 一個固定長度的字符串(可以包含字母、數(shù)字和特殊字符)。 size 參數(shù)指定以字符為單位的列長度 - 可以從 0 到 255。默認(rèn)為 1
VARCHAR(size) 可變長度字符串(可以包含字母、數(shù)字和特殊字符)。 size 參數(shù)指定字符的最大列長度 - 可以從 0 到 65535
BINARY(size) 等于 CHAR(),但存儲二進(jìn)制字節(jié)字符串。 size 參數(shù)以字節(jié)為單位指定列長度。默認(rèn)為 1
VARBINARY(size) 等于 VARCHAR(),但存儲二進(jìn)制字節(jié)字符串。 size 參數(shù)指定最大列長度(以字節(jié)為單位)。
TINYBLOB 對于 BLOB(二進(jìn)制大對象)。最大長度:255 字節(jié)
TINYTEXT 保存一個最大長度為 255 個字符的字符串
TEXT(size) 保存一個最大長度為 65,535 字節(jié)的字符串
BLOB(size) 對于 BLOB(二進(jìn)制大對象)。最多可容納 65,535 字節(jié)的數(shù)據(jù)
MEDIUMTEXT 保存最大長度為 16,777,215 個字符的字符串
MEDIUMBLOB 對于 BLOB(二進(jìn)制大對象)。最多可容納 16,777,215 字節(jié)的數(shù)據(jù)
LONGTEXT 保存最大長度為 4,294,967,295 個字符的字符串
LONGBLOB 對于 BLOB(二進(jìn)制大對象)。最多可容納 4,294,967,295 字節(jié)的數(shù)據(jù)
ENUM(val1, val2, val3, ...) 只能有一個值的字符串對象,從可能值列表中選擇。您最多可以在一個 ENUM 列表中列出 65535 個值。如果插入的值不在列表中,則將插入一個空白值。 這些值按您輸入的順序排序
SET(val1, val2, val3, ...) 可以有 0 個或多個值的字符串對象,從可能的值列表中選擇。一個 SET 列表中最多可以列出 64 個值


數(shù)值數(shù)據(jù)類型

數(shù)據(jù)類型 描述
BIT(size) 位值類型。每個值的位數(shù)在 size 中指定。 size 參數(shù)可以保存從 1 到 64 的值。size 的默認(rèn)值為 1。
TINYINT(size) 一個非常小的整數(shù)。有符號范圍是-128 到 127。無符號范圍是 0 到 255。size 參數(shù)指定最大顯示寬度(即 255)
BOOL 零被認(rèn)為是false,非零值被認(rèn)為是true。
BOOLEAN 等同 BOOL
SMALLINT(size) 一個小整數(shù)。有符號范圍是 -32768 到 32767。無符號范圍是 0 到 65535。size 參數(shù)指定最大顯示寬度(即 255)
MEDIUMINT(size) 一個中等整數(shù)。有符號范圍是 -8388608 到 8388607。無符號范圍是 0 到 16777215。size 參數(shù)指定最大顯示寬度(即 255)
INT(size) 一個中等整數(shù)。有符號范圍是 -2147483648 到 2147483647。無符號范圍是 0 到 4294967295。size 參數(shù)指定最大顯示寬度(即 255)
INTEGER(size) 等于 INT(size)
BIGINT(size) 一個大整數(shù)。有符號范圍是-9223372036854775808到9223372036854775807。無符號范圍是0到18446744073709551615。size參數(shù)指定最大顯示寬度(即255)
FLOAT(size, d) 一個浮點(diǎn)數(shù)。 size 中指定了總位數(shù)。小數(shù)點(diǎn)后的位數(shù)在 d 參數(shù)中指定。此語法在 MySQL 8.0.17 中已棄用,并將在未來的 MySQL 版本中刪除
FLOAT(p) 一個浮點(diǎn)數(shù)。 MySQL 使用 p 值來確定是使用 FLOAT 還是 DOUBLE 作為結(jié)果數(shù)據(jù)類型。如果 p 是從 0 到 24,則數(shù)據(jù)類型變?yōu)?FLOAT()。如果 p 是從 25 到 53,則數(shù)據(jù)類型變?yōu)?DOUBLE()
DOUBLE(size, d) 一個正常大小的浮點(diǎn)數(shù)。 size 中指定了總位數(shù)。 d參數(shù)中指定小數(shù)點(diǎn)后的位數(shù)
雙精度(size, d)  
DECIMAL(size, d) 一個精確的定點(diǎn)數(shù)。 size 中指定了總位數(shù)。小數(shù)點(diǎn)后的位數(shù)在 d 參數(shù)中指定。 size 的最大數(shù)為 65。d 的最大數(shù)為 30。size 的默認(rèn)值為 10。< em>d 為 0。
DEC(size, d) 等于 DECIMAL(size,d)

注意:所有數(shù)字?jǐn)?shù)據(jù)類型都可能有一個額外的選項:UNSIGNED 或 ZEROFILL。如果添加 UNSIGNED 選項,MySQL 不允許該列使用負(fù)值。如果添加 ZEROFILL 選項,MySQL 還會自動將 UNSIGNED 屬性添加到列中。

日期和時間數(shù)據(jù)類型

數(shù)據(jù)類型 描述
DATE 日期。格式:YYYY-MM-DD。支持的范圍是從 '1000-01-01' 到 '9999-12-31'
DATETIME(fsp) 日期和時間組合。格式:YYYY-MM-DD hh:mm:ss。支持的范圍是從"1000-01-01 00:00:00"到"9999-12-31 23:59:59"。 在列定義中添加 DEFAULT 和 ON UPDATE 以獲得自動初始化并更新到當(dāng)前日期和時間
TIMESTAMP(fsp) 時間戳。 TIMESTAMP 值存儲為自 Unix 紀(jì)元 ('1970-01-01 00:00:00' UTC) 以來的秒數(shù)。格式:YYYY-MM-DD hh:mm:ss。支持的范圍是從 '1970-01-01 00:00:01' UTC 到 '2038-01-09 03:14:07' UTC。 可以使用列定義中的 DEFAULT CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP 指定自動初始化和更新到當(dāng)前日期和時間
TIME(fsp) 一次。格式:hh:mm:ss。支持的范圍是從 '-838:59:59' 到 '838:59:59'
YEAR 四位數(shù)格式的年份。允許采用四位數(shù)格式的值:1901 到 2155 和 0000。 MySQL 8.0 不支持兩位數(shù)格式的年份。