MySQL數據類型包括:整型、浮點型、日期類型、字符型,這里用表格的方式詳細說明每個數據類型,這些只要記住常用的即可,需要再查閱。
整型
| 數據類型 | 存儲范圍 | 字節 |
|---|---|---|
| TINYINT | 有符號值:-128 到 127(-\(2^7\)到\(2^7\)) 無符號值:0到255(0到\(2^8\)) |
1 |
| SMALLINT | 有符號值:-32768 到 32767(-\(2^{15}到2^{15}\)) 無符號值:0到65535(0到\(2^{16}\)-1) |
2 |
| MEDIUMINT | 有符號值:-8388608 到 8388607(-\(2^{23}到2^{23}\)) 無符號值:0到16777215(0到\(2^{24}\)) |
3 |
| INT | 有符號值:-\(2^{31}到2^{31}\) 無符號值:0\(到2^{32}\)-1 |
4 |
| BIGINT | 有符號值:-\(2^{63}到2^{63}\) 無符號值:0\(到2^{64}\)-1 |
8 |
浮點型
| 數據類型 | 精度 |
|---|---|
| FLOAT[(M,D)] | 小數點后6-7位(常用) |
| DOUBLE[(M,D)] | 小數點后14-15位 |
日期時間類型
| 日期類型 | 存儲空間(字節) | 日期格式 | 范圍 |
|---|---|---|---|
| datetime | 8 | YYYY-MM-DD HH:MM:SS | 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59 |
| timestamp | 4 | YYYY-MM-DD HH:MM:SS | 1970-01-01 00:00:01 ~ 2038 |
| date | 3 | YYYY-MM-DD | 1000-01-01 ~ 9999-12-31 |
| year | 1 | YYYY | 1901~2155 |
| time | 2 | HH:MM:SS | -838:59:59 ~ 838:59:59 |
字符型
| 列類型 | 說明 |
|---|---|
| CHAR(M) | M個字節,0<=M<=255,固定長度 |
| VARCHAR(M) | L+1個字節,其中L<M且0<M<65535,可以小於定於長度M |
| 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個字節,取決於枚舉的個數(最多\(2^{16}\)-1個值) |
| SET('value1','value2') | 集合,1,2,3,4,8個字節,取決於成員個數 |
