mysql基礎 列型別 整型

2021-06-16 13:35:33 字數 3151 閱讀 6625

mysql列型別--字串  

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同義詞適用於與其它伺服器的相容性。

02 01 列型別(整型)

系統採用乙個位元組來儲存的整形。乙個位元組 8位,最大能表示的範圍是0 255。比如年齡 系統採用兩個位元組來儲存的整形。兩個位元組 16位,表示範圍是0 65535。系統採用三個位元組來儲存資料。三個位元組 24位,整形 標準整形 採用四個四節來儲存資料。大整形,採用八個位元組來儲存資料。測試案例...

mysql基礎 列型別

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

mysql基礎 mysql列型別

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