天天看點

MySQL有哪些資料庫類型?不要錯過喽

作者:Tiger老師的門鎖
MySQL有哪些資料庫類型?不要錯過喽

易道雲出品

今天小編就和大家聊聊MySQL有哪些資料庫類型?不要錯過喽

MySQL有哪些資料庫類型?不要錯過喽

MySQL的資料類型有數值類型、字元串類型、日期和時間類型。

1、數值類型

包括TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,分别表示1位元組、2位元組、3位元組、4位元組、8位元組的整數類型

1)任何整數類型都可以加上UNSIGNED屬性,表示無符号整數。

2)任何整數類型都可以指定長度,但它不會限制資料的合法程度,僅僅限制了顯示長度。還包括FLOAT、DOUBLE、DECIMAL在内的小數類型。

2、字串符類型

包括VARCHAR、CHAR、TEXT、BLOB。

注意:VARCHAR(n)和CHAR(n)中的n并不代表位元組個數,而是代表字元的個數。

3、日期和時間類型

常用于表示日期和時間類型為DALETIME、DEAT和TIMESTAMP。

盡量使用TIMESTAMP,空間效率高于DATETIME。

那再聊聊CHAR與VARCHAR有什麼差別?

MySQL有哪些資料庫類型?不要錯過喽

1、首先可以明确的是CHAR是定長的,而VARCHAR是可以變長的。

CHAR會根據聲明的字元串長度配置設定空間,并會使用空格對字元串右邊進行尾部填充。是以在檢索CHAR類型資料時尾部空格會被删除,如儲存的是字元串‘char’,但最後查詢到的是‘char’。又因為長度的固定,是以存儲效率高于VARCHAR類型。

VARCHAR在MySQL5.0之後長度支援到65535位元組,但會在資料開頭使用額外1~2個位元組存儲字元串長度(列長度小于255位元組時使用1位元組表示,否則2位元組),在結尾使用1位元組表示字元串結束。

2、再者,在存儲方式上,CHAR對英文字元(ASCLL)占用1位元組,對一個漢字使用2位元組。而VARCHAR對每個字元均使用2位元組。

雖然VARCHAR是根據字元串長度配置設定存儲空間的,但在記憶體中依舊使用長度進行排序等,是以在使用時仍需綜合考量字段長度。

看完了吧,你離成功又更近一步喽!!

MySQL有哪些資料庫類型?不要錯過喽

繼續閱讀