1. 程式人生 > >MYSQL基礎入門學習【2】

MYSQL基礎入門學習【2】

保存 範圍 body 不同的 clas 排列 分類 入門 字節

1. 數據類型:指列、存儲過程參數、表達式和局部變量的數據特征,它決定了數據的存儲格式,代表了不同的信息類型

(1) 整型(按存儲範圍分類):TINYINT(1字節) SAMLLINT(2字節) MEDIUMINT(3字節) INT(4字節) BIGINT(8字節)

數據優化的一個原則: 選擇最合理、最合適的數據類型,而不是最大的數據類型。存儲範圍越大占的空間就越大。

(2) 浮點數(按存儲範圍分類):單精度浮點FLOAT [(M,D)] 雙精度浮點DOUBLE[(M,D)];

M:數字總位數, D: 小數點後面的位數;M>=D; 如果M和D被省略,根據硬件允許的限制來保存值。單精度浮點數精確到大約7位小數位。

(3) 日期時間型(存儲需求):YEAR(1) TIME(3) DATE(3) DATETIME(8) TIMESTAMP(時間戳)(4)

很多時候設計到日期時間類型,我們也更傾向於用數字類型表示,因為牽扯到跨時區問題。以後涉及到PHP再具體了解。

(4)字符型: CHAR(M): M 個字節, 0<=M<=255 沒有達到指定長度時後面以空格補齊存儲

      VARCHAR(M): L+1個字節, L<=M 0<=M<=65535

TINYTEXT : L+1個字節, L<2^8

TEXT: L+2個字節, L<2^16

MEDIUMTEXT: L+3個字節, L<2^24

LONGTEXT: L+4個字節, L<2^32

ENUM(‘value1‘,‘value2‘,...):1或2個字節,取決於枚舉值的個數(最多65535個值)

SET(‘value1‘,‘value2‘,...):集合,(這些值之中任意排列組合)1、2、3、4或者8個字節,取決於set成員的數目,最多64個成員

這些數據類型可以應用在數據表中,也可以用於數據存儲過程、函數等等。

MYSQL基礎入門學習【2】