數值資料型別
tinyint 有符號範圍為-128到127,無符號為0到255,占用空間1位元組
smallint 有符號為-32768到32767,無符號為0到65535,占用空間2位元組
int 有符-2147483648到2147483647, 無符號為0到4294967295,
占用空間4位元組
mediumint有符號為-8388608到8388607,無符號為0到16777215,
占用空間3位元組
bigint 有符號為-(2^23)~(2^23 - 1),無符號為0~(2^24 - 1),占用空間位元組為8位元組
浮點數型別
float(m,d)不能使用無符號的浮點數字,可以定義顯示長度m和小數字數d,預設的為10,2
double(m,d)不能使用的雙精度浮點數,預設的為16,4,存經緯度用此型別
定點數型別
decimal(m,d)非壓縮浮點數不能是無符號的,顯示長度和小數的數量是必須的,在精度要求比較高的應用中(如貨幣)要使用定點數來儲存資料
日期和時間型別
型別名稱 日期格式 占用空間
year yyyy 1個位元組
time hh:mm:ss 3個位元組
date yyyy-mm-dd 3個位元組
datetime yyyy-mm-dd hh:mm:ss 8個位元組
timestamp yyyy-mm-dd hh:mm:ss 4個位元組
字串型別
char(m),m為0~255之間的整數
varchar(m),m為0~65536之間的整數,值的長度+1個位元組
tinyblob,允許長度為0~255位元組,值的長度+1個位元組
blob,允許長度為0~65535位元組,值的長度+2個位元組
mediumblob ,允許長度為0~167772150位元組,值的長度+3個位元組
longblob ,允許長度為0~4294967295位元組,值的長度+4個位元組
tinytext,允許長度為0~255位元組,值的長度+2個位元組
text,允許長度為0~65535位元組,值的長度+2個位元組
mediumtext,允許長度為0~167772150位元組,值的長度+3個位元組
longtext ,允許長度為0~4294967295位元組,值的長度+4個位元組
enum,列舉,儲存需求為1或兩個位元組
set,乙個設定,字串物件可以有零個或多個set成員,儲存需求為1,2,3,4或8個位元組
資料型別的選擇注意事項
blob是二進位制串,用來儲存音訊、等二進位制資料;text是非二進位制字串,用來存放純文字檔案,雖然儲存文字檔案本質上也是儲存二進位制,但是text會有乙個字符集,會轉化為可顯示字元。
char是固定長度,優點是處理速度快,缺點是浪費空間;
varchar是可變長度,優點是節省空間,缺點是處理速度慢。
對於myisam儲存引擎,最好使用固定長度的資料列,以使整個資料表靜態化,從而縮短資料檢索時間,用空間換時間;
對於innodb儲存引擎,推薦使用varchar,因為innodb資料表的儲存格式不分固定長度和可變長度,所以在檢索時間上固定長度和可變長度差不多,所以,使用varchar就比較節省空間了。
對於日期型別的選擇,如果應用只需要記錄年,那麼用乙個位元組來儲存的year就可以滿足需求,這樣不僅能節約儲存,更能提高 表的操作效率
如果要記錄年月日時分秒,並且記錄的年份比較久遠,那麼最好使用datetime,而不是要使用timestamp,因為timestamp表示的日期範圍比datetime要短的多,如果要記錄的日期需要讓不同時區的使用者使用,那麼最好使用timestamp,因為日期型別中只用它能夠和實際時區相對應
mysql資料型別用法 mysql資料型別和用法
歡迎進入linux社群論壇,與200萬技術人員互動交流 進入 mysql支援多種列型別 數值型別 日期 時間型別和字串 字元 型別。本章首先對這些列型別進行了概述,然後更加詳細地描述了各種列的型別,以及列型別儲存需求的總結。概述很簡單。關於具體列型別 歡迎進入linux社群論壇,與200萬技術人員互...
mysql 資料型別 真假 MySQL 資料型別
mysql基礎 資料型別 整型型別 根據所儲存的整數數值取值範圍不同,可分為以下五類 1 tinyint佔1個位元組 2 smallint佔2個位元組 3 mediumint 佔3個位元組 4 int佔4個位元組 5 bigint佔8個位元組 根據每種型別所佔的位元組數可確定其無符號整數和有符號整數...
mysql 郵箱 資料型別 mysql 資料型別
1 整型mysql資料型別含義 有符號 tinyint m 1個位元組 範圍 128 127 smallint m 2個位元組 範圍 32768 32767 mediumint m 3個位元組 範圍 8388608 8388607 int m 4個位元組 範圍 2147483648 21474836...