📅  最后修改于: 2023-12-03 15:03:07.820000             🧑  作者: Mango
MySQLi 是 PHP 提供的一个用于连接和操作 MySQL 数据库的扩展库。它提供了丰富的数据类型来适应不同的存储需求。本文将介绍 MySQLi 扩展库中常用的数据类型及其特性。
整型是用来存储整数值的数据类型。MySQLi 提供了不同大小的整型,包括:
TINYINT
:范围为 -128 到 127 的有符号整数。SMALLINT
:范围为 -32768 到 32767 的有符号整数。MEDIUMINT
:范围为 -8388608 到 8388607 的有符号整数。INT
:范围为 -2147483648 到 2147483647 的有符号整数。BIGINT
:范围为 -9223372036854775808 到 9223372036854775807 的有符号整数。浮点型用于存储带有小数的数值。MySQLi 支持以下两种浮点型:
FLOAT
:单精度浮点数,用于存储较小范围的浮点数。DOUBLE
:双精度浮点数,用于存储较大范围的浮点数。定点型用于存储精度要求高的浮点数。MySQLi 提供了 DECIMAL
类型,可以用于存储固定精度的小数,例如货币金额。
字符型用于存储字符数据。MySQLi 提供了以下几种字符型:
CHAR
:定长字符串,最大长度为 255 个字符。VARCHAR
:可变长度字符串,最大长度为 65535 个字符。二进制类型用于存储二进制数据,例如图像、音频等。MySQLi 提供了以下几种二进制型:
BINARY
:定长二进制数据,最大长度为 255 个字节。VARBINARY
:可变长度二进制数据,最大长度为 65535 个字节。日期类型用于存储日期数据。MySQLi 提供了 DATE
类型,用于存储年-月-日格式的日期。
时间类型用于存储时间数据。MySQLi 提供了以下几种时间型:
TIME
:用于存储时:分:秒格式的时间。DATETIME
:用于存储年-月-日 时:分:秒格式的时间。TIMESTAMP
:用于存储 UNIX 时间戳格式的时间。除了上述常用的数据类型,MySQLi 还提供了一些其他类型,如:
ENUM
:用于存储枚举类型的数据。SET
:用于存储一个集合数据。这些数据类型可以更好地满足特定数据存储的需求。
MySQLi 提供了丰富的数据类型,包括整型、浮点型、定点型、字符型、二进制型、日期型、时间型等。根据不同的需求可以选择合适的数据类型来存储数据。熟悉这些数据类型能够更好地设计和管理 MySQL 数据库。
# MySQLi 数据类型
## 1. 数值类型
### 1.1 整型 (Integer)
- `TINYINT`:范围为 -128 到 127 的有符号整数。
- `SMALLINT`:范围为 -32768 到 32767 的有符号整数。
- `MEDIUMINT`:范围为 -8388608 到 8388607 的有符号整数。
- `INT`:范围为 -2147483648 到 2147483647 的有符号整数。
- `BIGINT`:范围为 -9223372036854775808 到 9223372036854775807 的有符号整数。
### 1.2 浮点型 (Floating-Point)
- `FLOAT`:单精度浮点数,用于存储较小范围的浮点数。
- `DOUBLE`:双精度浮点数,用于存储较大范围的浮点数。
### 1.3 定点型 (Decimal)
- `DECIMAL`:用于存储固定精度的小数。
## 2. 字符串类型
### 2.1 字符型 (Character)
- `CHAR`:定长字符串,最大长度为 255 个字符。
- `VARCHAR`:可变长度字符串,最大长度为 65535 个字符。
### 2.2 二进制类型 (Binary)
- `BINARY`:定长二进制数据,最大长度为 255 个字节。
- `VARBINARY`:可变长度二进制数据,最大长度为 65535 个字节。
## 3. 日期与时间类型
### 3.1 日期类型 (Date)
- `DATE`:用于存储年-月-日格式的日期。
### 3.2 时间类型 (Time)
- `TIME`:用于存储时:分:秒格式的时间。
- `DATETIME`:用于存储年-月-日 时:分:秒格式的时间。
- `TIMESTAMP`:用于存储 UNIX 时间戳格式的时间。
## 4. 其他类型
- `ENUM`:用于存储枚举类型的数据。
- `SET`:用于存储一个集合数据。