mysql資料型別用法 mysql資料型別和用法

2021-10-17 13:29:53 字數 2095 閱讀 4831

歡迎進入linux社群論壇,與200萬技術人員互動交流 >>進入 mysql支援多種列型別:數值型別、日期/時間型別和字串(字元)型別。本章首先對這些列型別進行了概述,然後更加詳細地描述了各種列的型別,以及列型別儲存需求的總結。概述很簡單。關於具體列型別

歡迎進入linux社群論壇,與200萬技術人員互動交流 >>進入

mysql支援多種列型別:數值型別、日期/時間型別和字串(字元)型別。本章首先對這些列型別進行了概述,然後更加詳細地描述了各種列的型別,以及列型別儲存需求的總結。概述很簡單。關於具體列型別的詳細資訊應查閱詳細的描述,例如指定值時允許使用的格式。

mysql支援處理空間資料的副檔名。

幾種列型別描述使用了下述慣例:

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

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的乙個別名。

bit[(m)]

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

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

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

bool,boolean

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

int[(m)] [unsigned] [zerofill]

普通大小的整數。帶符號的範圍是-2147483648到2147483647.無符號的範圍是0到4294967295.

bigint[(m)] [unsigned] [zerofill]

大整數。帶符號的範圍是-9223372036854775808到9223372036854775807.無符號的範圍是0到18446744073709551615.

作為sql標準的擴充套件,mysql也支援整數型別tinyint、mediumint和bigint.下面的表顯示了需要的每個整數型別的儲存和範圍。

型別位元組

最小值最大值

(帶符號的/無符號的)

(帶符號的/無符號的)

tinyint

-128

smallint

-32768

mediumint

-8388608

int-2147483648

bigint

-9223372036854775808

char和varchar型別

char和varchar型別類似,但它們儲存和檢索的方式不同。它們的最大長度和是否尾部空格被保留等方面也不同。在儲存或檢索過程中不進行大小寫轉換。

char和varchar型別宣告的長度表示你想要儲存的最大字元數。例如,char(30)可以占用30個字元。

char列的長度固定為建立表時宣告的長度。長度可以為從0到255的任何值。當儲存char值時,在它們的右邊填充空格以達到指定的長度。當檢索到char值時,尾部的空格被刪除掉。在儲存或檢索過程中不進行大小寫轉換。

varchar列中的值為可變長字串。長度可以指定為0到65,535之間的值。(varchar的最大有效長度由最大行大小和使用的字符集確定。整體最大長度是65,532位元組)。

同char對比,varchar值儲存時只儲存需要的字元數,另加乙個位元組來記錄長度(如果列宣告的長度超過255,則使用兩個位元組)。

varchar值儲存時不進行填充。當值儲存和檢索時尾部的空格仍保留,符合標準sql.

如果分配給char或varchar列的值超過列的最大長度,則對值進行裁剪以使其適合。如果被裁掉的字元不是空格,則會產生一條警告。如果裁剪非空格字元,則會造成錯誤(而不是警告)並通過使用嚴格sql模式禁用值的插入。參見5.3.2節,"sql伺服器模式".

[1] [2]

MySQL資料型別DECIMAL用法

mysqldecimal資料型別用於在資料庫中儲存精確的數值。我們經常將decimal資料型別用於保留準確精確度的列,例如會計系統中的貨幣資料。要定義資料型別為decimal的列,請使用以下語法 1 column namedecimal p,d 在上面的語法中 decimal p,d 表示列可以儲存...

MySQL資料型別DECIMAL用法

mysqldecimal資料型別用於在資料庫中儲存精確的數值。我們經常將decimal資料型別用於保留準確精確度的列,例如會計系統中的貨幣資料。要定義資料型別為decimal的列,請使用以下語法 column namedecimal p,d 在上面的語法中 decimal p,d 表示列可以儲存d位...

MySQL資料型別DECIMAL用法

mysqldecimal資料型別用於在資料庫中儲存精確的數值。我們經常將decimal資料型別用於保留準確精確度的列,例如會計系統中的貨幣資料。要定義資料型別為decimal的列,請使用以下語法 1 column namedecimal p,d 在上面的語法中 decimal p,d 表示列可以儲存...