在MySQL中,創建表時需要為每個字段選擇合適的數據類型。數據類型決定了字段可以存儲的數據范圍和格式。以下是一些常用的MySQL數據類型:
-
整數類型:
- TINYINT:1字節有符號整數,范圍從-128到127。
- SMALLINT:2字節有符號整數,范圍從-32,768到32,767。
- MEDIUMINT:3字節有符號整數,范圍從-8,388,608到8,388,607。
- INT:4字節有符號整數,范圍從-2,147,483,648到2,147,483,647。
- BIGINT:8字節有符號整數,范圍從-9,223,372,036,854,775,808到9,223,372,036,854,775,807。
-
無符號整數類型(非負數):
- UNSIGNED TINYINT、UNSIGNED SMALLINT、UNSIGNED MEDIUMINT、UNSIGNED INT、UNSIGNED BIGINT:與有符號整數類型相似,但只能存儲非負數。
-
浮點數和定點數類型:
- FLOAT:單精度浮點數,4字節。
- DOUBLE:雙精度浮點數,8字節。
- DECIMAL:定點數,存儲精確的小數。
-
日期和時間類型:
- DATE:日期,格式為YYYY-MM-DD。
- TIME:時間,格式為HH:MI:SS。
- DATETIME:日期和時間,格式為YYYY-MM-DD HH:MI:SS。
- TIMESTAMP:時間戳,格式為YYYY-MM-DD HH:MI:SS。
-
字符串類型:
- CHAR:固定長度的字符串。
- VARCHAR:可變長度的字符串,最大長度可達65,535個字符。
- TINYTEXT:可變長度的字符串,最大長度為255個字符。
- TEXT:可變長度的字符串,最大長度為65,535個字符。
- MEDIUMTEXT:可變長度的字符串,最大長度為16,777,215個字符。
- LONGTEXT:可變長度的字符串,最大長度為4,294,967,295個字符。
-
二進制類型:
- BINARY:固定長度的二進制數據。
- VARBINARY:可變長度的二進制數據,最大長度可達65,535字節。
- TINYBLOB:可變長度的二進制數據,最大長度為255字節。
- BLOB:可變長度的二進制數據,最大長度為65,535字節。
- MEDIUMBLOB:可變長度的二進制數據,最大長度為16,777,215字節。
- LONGBLOB:可變長度的二進制數據,最大長度為4,294,967,295字節。
-
枚舉類型:
-
集合類型:
在選擇數據類型時,請根據實際需求和數據特性來選擇合適的類型。例如,對于年齡這樣的整數數據,可以使用SMALLINT類型;對于價格這樣的小數數據,可以使用DECIMAL類型。