1. 程式人生 > >MySQL幾種資料型別精度和標度的情況

MySQL幾種資料型別精度和標度的情況

1、整型

int預設是int(11),建立欄位int(5),當儲存的資料長度大於5時,可以正常儲存,儲存的資料完整顯示;

2、浮點型

float(M,D)和double(M,D)

如果不寫精度和標度,則會按照實際精度值顯示,如果有精度和標度,則會自動將四捨五入的結果插入,不會報錯

3、定點型

decimal(M,D)

如果不寫精度和標度,則按照預設值decimal(10,0)來進行操作,並且如果資料超越了精度和標度值,系統會報錯。

4、位型別

預設為1位,插入超出定義的範圍的資料會報錯。

5、日期型別

datetime長度為8

date長度為4

timestamp長度為4

建立表的時候,第一個timestamp會自動附加預設值current_timestamp,而第二個timestamp型別預設值設定為0(一個表中只能有一個列預設值為current_timestamp)

timestamp與datetime相比,儲存的日期範圍更小,而且與時區相關

time長度為3

year長度為1

超出有效值的範圍會產生報錯。

6、char和varchar型別

char固定長度,在檢索的時候會刪除尾部的空格,varchar則保留空格

7、binary和varbinary型別

當儲存binary時,在值的最後填充‘0x00’以達到指定的欄位定義長度