MySQL 能夠爲整數類型指定寬度,例如 INT(11)
,對大多數應用這是沒有意義的:它不會限制值的合法範圍,只是規定了 MySQL 的一些交互工具(例如 MySQL 命令行客戶端)用來顯示字符的個數。對於存儲和計算來講,INT(1)
和 INT(20)
是相同的。只有使用 ZEROFILL
屬性時,指定長度纔有意義(按照指定長度進行零的填充)。html
因此,在不使用 ZEROFILL
時,不須要指定整形的長度。工具
1 byte
( 8 bit
) 。使用無符號類型(UNSIGNED
)時,8
位都是 1
時所表示的十進制數爲 255
,因此其可存儲的範圍爲 0 ~ 255
。使用有符號類型時,範圍爲 -128 ~ 127
。2 byte
,可存儲的無符號範圍爲 0 ~ 65535
,有符號範圍爲 -32768 ~ 32767
。3 byte
,可存儲的無符號範圍爲 0 ~ 16777215
,有符號範圍爲 -8388608 ~ 8388607
。4 byte
,可存儲的無符號範圍爲 0 ~ 4294967295
,有符號範圍爲 -2147483648 ~ 2147483647
。8 byte
,可存儲的無符號範圍爲 0 ~ 18446744073709551615
,有符號範圍爲 -9223372036854775808 ~ 9223372036854775807
。參考連接:MySQL 整型長度的含義編碼
CHAR命令行
Hello!
」 和 「你好,世界!
」 都是能夠的。最大長度
爲 255
個字符。VARCHARcode
TINYTEXThtm
255 byte
的文本內容,也就是說在 UTF8
編碼下能夠存儲 255
個英文字母/英文符號,而漢字/中文符號最多隻能存儲 85
(255/3
)個。如下類型一樣可推算。TEXTblog
65535 byte 約等於 65KB
的文本內容。MEDIUMTEXT字符串
16777215 byte 約等於 16MB
的文本內容。LONGTEXTget
4294967295 byte 約等於 4GB
的文本內容。TIMESTAMPit
1970-01-01 00:00:01 UTC
到 2038-01-09 03:14:07 UTC
(UTC
轉換成東八區時間須要 +08:00
),存儲爲自紀元(1970-01-01 00:00:00 UTC
)起的秒數。'2019-06-11 23:18:45'
,執行 INSERT
或 UPDATE
操做時,也是須要傳入一個日期時間字符串。6
。例如,當精度爲 5
時查詢或傳入的字符串形式爲 '2019-06-12 13:22:21.35927'
。用於存儲 JSON
文本,不能夠指定長度,不能夠設定默認值。