mysql基礎 列型別

2021-12-30 05:06:51 字數 2757 閱讀 4725

mysql基礎:列型別--整型

mysql支援多種列型別:數值型別、日期/時間型別和字串(字元)型別

說明:·         m

表示最大顯示寬度。最大有效顯示寬度是255。

·         d

適用於浮點和定點型別,並表示小數點後面的位數。最大可能的值是30,但不應大於m-2。

· 方括號(『[』和『]』)表示可選部分。

如果為乙個數值列指定zerofill,mysql自動為該列新增unsigned屬性。

serial是bigint unsigned not null auto_increment unique的乙個別名。

在整數列定義中,serial default value是not null auto_increment unique的乙個別名。

注:上面not null是不可為空,auto_increment是遞增,指定起始值為1用auto_increment=1語句,不指定預設也為1。

uniqe是不可重複的意思,取值不能與已經存在的資料重複。

整型資料

·         bit[(m)]

位欄位型別。m表示每個值的位數,範圍為從1到64。如果m被省略, 預設為1。

·         tinyint[(m)] [unsigned] [zerofill]

很小的整數。帶符號的範圍是-128到127。無符號的範圍是0到255。

·         bool,boolean

是tinyint(1)的同義詞。zero值被視為假。非zero值視為真。

在將來,將根據標準sql引入完全布林型別的處理。

·         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。

·float[(m,d)] [unsigned] [zerofill]

小(單精度)浮點數。允許的值是-3.402823466e+38到-1.175494351e-38、0和1.175494351e-38到3.402823466e+38。這些是理論限制,基於ieee標準。實際的範圍根據硬體或作業系統的不同可能稍微小些。

m是小數縱位數,d是小數點後面的位數。如果m和d被省略,根據硬體允許的限制來儲存值。單精度浮點數精確到大約7位小數字。

如果指定unsigned,不允許負值。

·double[(m,d)] [unsigned] [zerofill]

普通大小(雙精度)浮點數。允許的值是-1.7976931348623157e+308到-2.2250738585072014e-308、0和2.2250738585072014e-308到 1.7976931348623157e+308。這些是理論限制,基於ieee標準。實際的範圍根據硬體或作業系統的不同可能稍微小些。

m是小數總位數,d是小數點後面的位數。如果m和d被省略,根據硬體允許的限制來儲存值。雙精度浮點數精確到大約15位小數字。

如果指定unsigned,不允許負值。

·double precision[(m,d)] [unsigned] [zerofill], real[(m,d)] [unsigned] [zerofill]

為double的同義詞。除了:如果sql伺服器模式包括real_as_float選項,real是float的同義詞而不是double的同義詞。

·float(p) [unsigned] [zerofill]

浮點數。p表示精度(以位數表示),但mysql只使用該值來確定是否結果列的資料型別為float或double。如果p為從0到24,資料型別變為沒有m或d值的float。如果p為從25到53,資料型別變為沒有m或d值的double。結果列範圍與本節前面描述的單精度float或雙精度double資料型別相同。

float(p)語法與odbc相容。

·decimal[(m[,d])] [unsigned] [zerofill]

壓縮的「嚴格」定點數。m是小數字數(精度)的總數,d是小數點(標度)後面的位數。小數點和(負數)的『-』符號不包括在m中。如果d是0,則值沒有小數點或分數部分。decimal整數最大位數(m)為65。支援的十進位制數的最大位數(d)是30。如果d被省略, 預設是0。如果m被省略, 預設是10。

如果指定unsigned,不允許負值。

所有decimal列的基本計算(+,-,*,/)用65位精度完成。

· dec[(m[,d])] [unsigned] [zerofill], numeric[(m[,d])] [unsigned] [zerofill], fixed[(m[,d])] [unsigned] [zerofill]

是decimal的同義詞。fixed同義詞適用於與其它伺服器的相容性。

mysql基礎 mysql列型別

mysql基礎 mysql列型別 字串 char 這是char 1 的同義詞。national varchar m binary 變長字串。m 表示最大列長度。m的範圍是0到65,535。varchar的最大實際長度由最長的行的大小和使用的字符集確定。最大有效長度是65,532位元組 注釋 mysq...

mysql基礎 列型別 整型

mysql列型別 字串 mysql列型別 時間和日期 mysql 支援多種列型別 數值型別 日期 時間型別和字串 字元 型別說明 m 表示最大顯示寬度。最大有效顯示寬度是255。d 適用於浮點和定點型別,並表示小數點後面的位數。最大可能的值是30,但不應大於m 2。方括號 和 表示可選部分。如果為乙...

mysql基礎 mysql列型別 字串

mysql列型別 整型 mysql列型別 時間和日期 char 這是char 1 的同義詞。national varchar m binary 變長字串。m 表示最大列長度。m 的範圍是0到65,535。varchar的最大實際長度由最長的行的大小和使用的字符集確定。最大有效 長度是65,532位元...