mysql timdir_MYSQL学习笔记——数据类型
mysql的數據類型可以分為三大類,分別是數值數據類型、字符串數據類型以及日期時間數據類型。
數值數據類型
數值類型又可以分為整型、浮點類型、Decimal。
整型
mysql的整型可以分為TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,下表給出了每個類型的存儲空間大小和數值表示范圍。
類型
字節
最小值
最大值
(帶符號的/無符號的)
(帶符號的/無符號的)
TINYINT
1
-128
127
0
255
SMALLINT
2
-32768
32767
0
65535
MEDIUMINT
3
-8388608
8388607
0
16777215
INT
4
-2147483648
2147483647
0
4294967295
BIGINT
8
-9223372036854775808
9223372036854775807
0
18446744073709551615
浮點型
浮點型可以分為單精度(FLOAT)和雙精度(DOUBLE),它們可以存儲小數,但是存儲的是近似值,并不保證精確度。可以使用FLOAT(M,D)或DOUBLE(M,D)來指定浮點數的精度,這里,“(M,D)”表示該值一共顯示M位整數,其中D位位于小數點后面。例如,定義為FLOAT(7,4)的一個列可以顯示為-999.9999。MySQL保存值時進行四舍五入,因此如果在FLOAT(7,4)列內插入999.00009,近似結果是999.0001。
DECIMAL
DECIMAL和浮點數一樣,可以用來存儲小數,但是與浮點數的存儲近似值不同,DECIMAL存儲的是精確值,我們一樣可用DECIMAL(M, D)來指定精度,這里的(M,D)同樣表示該值一共顯示M位整數,其中D位位于小數點后面。
浮點型 vs Decimal
雖然浮點型和Decimal都可以表示小數,但是Decimal可以精確表示,浮點型是近似表示,以下我們對這個不同舉一個例子:
可以看到decimal可以精確地表示我們的插入值,但是float卻無法精確表示。
字符串型
mysql支持定長字符串和變長字符串兩種字符串類型,定長字符串用CHAR(M)表示,M 代表寬度, 0<=M<=255之間;變長字符串用VARCHAR(M)表示,M代表寬度, 0<=M<=65535。定長字符串的速度較變長字符串的速度更快,但是如果存儲的字符串長短不一的話,使用定長字符串會造成空間浪費。
日期時間數據類型
mysql常用的日期時間數據類型有DATE、TIME、DATETIME三種類型,這三種類型的表示格式如下:
列類型
表示內容
DATE
YYYY-MM-DD
TIME
hh:mm:ss
DATETIME
YYYY-MM-DD hh:mm:ss
總結
以上是生活随笔為你收集整理的mysql timdir_MYSQL学习笔记——数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: template标签_C++核心准则T.
- 下一篇: 微信小程序简介、发展史、小程序的优点、申