当前位置:实例文章 » JAVA Web实例» [文章]MySQL数据类型

MySQL数据类型

发布人:shili8 发布时间:2025-02-14 16:14 阅读次数:0

**MySQL 数据类型**

MySQL 是一种流行的关系数据库管理系统,支持多种数据类型以存储不同类型的数据。理解 MySQL 数据类型对于设计和优化数据库至关重要。

### 整型(Integer)

整型用于存储整数值,如1、-1、0 等。

* **TINYINT**:占用1 个字节,范围是 -128 到127。
* **SMALLINT**:占用2 个字节,范围是 -32768 到32767。
* **MEDIUMINT**:占用3 个字节,范围是 -8388608 到8388607。
* **INT**(或 **INTEGER**):占用4 个字节,范围是 -2147483648 到2147483647。
* **BIGINT**:占用8 个字节,范围是 -9223372036854775808 到9223372036854775807。

sqlCREATE TABLE test (
 id INT PRIMARY KEY,
 age TINYINT,
 salary MEDIUMINT);


### 浮点型(Floating-point)

浮点型用于存储小数值,如3.14、-0.5 等。

* **FLOAT**:占用4 个字节,精度通常为7 位数字。
* **DOUBLE**:占用8 个字节,精度通常为15 位数字。
* **DECIMAL**(或 **NUMERIC**):用于存储精确的小数值。

sqlCREATE TABLE test (
 price FLOAT,
 salary DOUBLE,
 balance DECIMAL(10,2)
);


### 字符型(Character)

字符型用于存储字符串,如 "hello"、'a' 等。

* **CHAR**:固定长度的字符串,例如 CHAR(10)。
* **VARCHAR**:可变长度的字符串,例如 VARCHAR(255)。

sqlCREATE TABLE test (
 name CHAR(20),
 description VARCHAR(100)
);


### 日期型(Date)

日期型用于存储日期值,如2022-01-01 等。

* **DATE**:占用3 个字节,范围是1000-01-01 到9999-12-31。
* **TIME**:占用3 个字节,范围是00:00:00 到23:59:59。

sqlCREATE TABLE test (
 birthday DATE,
 arrival TIME);


### 枚举型(Enum)

枚举型用于存储特定值的集合,如 "male"、"female" 等。

* **ENUM**:占用1 个字节,支持多个值。

sqlCREATE TABLE test (
 sex ENUM('male', 'female')
);


### 位图(Bit)

位图用于存储布尔值,如 TRUE 或 FALSE 等。

* **BIT**:占用1 个字节,支持多个值。

sqlCREATE TABLE test (
 is_admin BIT(1)
);


### JSONJSON 是一种用于存储和交换数据的格式。

* **JSON**:支持 JSON 数据类型。

sqlCREATE TABLE test (
 data JSON);


### 其他类型MySQL 还支持其他一些特殊类型,如:

* **BLOB**(Binary Large OBject):用于存储二进制数据。
* **TEXT**:用于存储长文本数据。
* **POINT**:用于存储地理位置数据。

sqlCREATE TABLE test (
 image BLOB,
 content TEXT,
 location POINT);


总之,MySQL 提供了多种数据类型以适应不同类型的数据需求。选择合适的数据类型对于设计和优化数据库至关重要。

相关标签:androidadb
其他信息

其他资源

Top