byte:-2^7 ~ 2^7-1,即-128 ~ 127。1字節。Byte。末尾加B
short:-2^15 ~ 2^15-1,即-32768 ~ 32767。2字節。Short。末尾加S
long:-2^63 ~ 2^63-1,即-9223372036854774808 ~ 9223372036854774807。8字節。Long。末尾加L。(也可以不加L)
有符號TinyInt: -2^7 (-128) ~ 2^7 - 1 (127) ,存儲大小為 1 個字節。
無符號TinyInt: 0 ~255
有符號SmallInt : -2^15 (-32,768) ~2^15 - 1 (32,767) ,存儲大小為2 個字節。
無符號SmallInt:0 ~65535
有符號MediumInt:一個中等大小整數。-8388608~8388607 ,存儲大小為3 個字節。
無符號MediumInt:0~16777215。
有符號int:int(m):-2^31 ~ 2^31-1,即-2147483648 ~ 2147483647。存儲大小為4字節。Integer。
無符號int:int(m)0~4294967295。
有符號BigInt :-2^63 (-9223372036854775808) ~ 2^63-1 (9223372036854775807) ,存儲大小為 8 個字節
無符號BigInt :0~18446744073709551615。
浮點型:
有符號Float :單精度浮點型,8位精度(4字節) ,float(m,d):m表示的是最大長度,d表示的顯示的小數位數。
例如上面的sql里:float(4,2) 表示:這個浮點數最大長度為5,也就是五位,然后小數部分為2位,至於存儲范圍,取決於你是否定義了無符號。
無符號的話,最小是0.0 最大能存儲到9999.9,如果有符號的話,范圍是:-99.99至99.99。
默認大小為24位數字,精度大約7位數字(經測試為6位),當設置M大小大於24時,自動轉換為DOUBLE類型;同時設置M和D時不進行自動轉換。
float的取值范圍在-3.4E+38 和 3.4E+38
Double :double(m,d) 雙精度浮點型 16位精度(8字節) m總個數,最大為,d小數位
設一個字段定義為float(6,3),如果插入一個數123.45678,實際數據庫里存的是123.457,但總個數還以實際為准,即6位。整數部分最大是3位,如果插入數12.123456,存儲的是12.1234,如果插入12.12,存儲的是12.1200.
定點數:
Decimal :浮點型在數據庫中存放的是近似值,而定點類型在數據庫中存放的是精確值。
decimal(m,d) 參數m<65 是總個數,d<30且 d<m 是小數位。
字符類型:
Varchar :Varchar(M) ,變長字符串,要求M<=255
Char :Varchar(M) ,固定長度,M<=255
NChar :mysql5.7不支持,Nchar數據類型采用Unicode標准字符集,Unicode標准用兩個字節為一個存儲單位,可以同時出現中文、英文、法文等,而不會出現編碼沖突取值范圍1~4000,
TinyBlob :Max:255,最大255個字節
Blob :Max:64K,最大65535(2^16-1)個字節
MediumBlob:Max:16M,大小寫敏感,最大16777215 (2^24-1)個字節
LongBlob :Max:4G,大小寫敏感,最大4294967295 (2^32-1)個字節
Binary(n) :n指的是字節長度,特點是插入定長不足補0,n<=255
VarBinary(n):n指的是字節長度,特點是定長不補0,n<=65535
BINARY(N)和VARBINARY(N)中的N指的是字節長度,而CHAR(N)和VARCHAR(N)中N指的是的字符長度。對於BINARY(10) ,其可存儲的字節固定為10,而對於CHAR(10) ,其可存儲的字節視字符集的情況而定。
日期類型:
Date :以YYYY-MM-DD的格式顯示,比如:2009-07-19
TimeStamp:以YYYY-MM-DD的格式顯示,比如:2009-07-19,自動存儲記錄修改時間
DateTime :以YYYY-MM-DD HH:MM:SS的格式顯示,比如:2009-07-19 11:22:30
Time :以HH:MM:SS的格式顯示。比如:11:22:30
Year :以YYYY的格式顯示。比如:2009

