了解 MySQL 数据类型及其在表中的应用(mysql数据类型表)

了解 MySQL 数据类型及其在表中的应用

MySQL 是一种流行的关系型数据库管理系统,由于其可靠性和性能而备受欢迎。在使用 MySQL 时,数据类型是非常重要的一个方面。MySQL 支持多种数据类型,包括整数、浮点数、日期、字符串等。以下是常见的 MySQL 数据类型及其在表中的应用。

1. 整数类型(INT、TINYINT、SMALLINT、MEDIUMINT、BIGINT)

整数类型用于存储整数值,MySQL 同时支持有符号和无符号整数类型。不同的整数类型有着不同的范围和存储空间。例如,TINYINT 只有 1 个字节的存储,范围是 -128 到 127 或 0 到 255。INT 和 BIGINT 分别占用 4 个字节和 8 个字节的存储空间,范围分别是 -2^31 到 2^31-1 和 -2^63 到 2^63-1。

示例代码:

CREATE TABLE students (

id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,

name VARCHAR(50) NOT NULL,

age TINYINT UNSIGNED NOT NULL,

PRIMARY KEY (id)

);

2. 浮点数类型(FLOAT、DOUBLE、DECIMAL)

浮点数类型用于存储实数值,包括常见的小数和科学计数法表示的数字。FLOAT 和 DOUBLE 分别占用 4 个字节和 8 个字节的存储空间,精度和范围也不同。DECIMAL 类型用于存储高精度的数字,可以指定精度和小数位数。

示例代码:

CREATE TABLE products (

id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,

name VARCHAR(50) NOT NULL,

price DECIMAL(10,2) NOT NULL,

PRIMARY KEY (id)

);

3. 日期和时间类型(DATE、TIME、DATETIME、TIMESTAMP)

日期和时间类型用于存储日期和时间信息。DATE 类型用于存储年月日,格式为 YYYY-MM-DD。TIME 类型用于存储时分秒,格式为 HH:MM:SS。DATETIME 类型包含日期和时间,格式为 YYYY-MM-DD HH:MM:SS。TIMESTAMP 类型也包含日期和时间,但其范围和存储空间与 DATETIME 不同,同时 TIMESTAMP 也有自动更新功能。

示例代码:

CREATE TABLE orders (

id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,

customer_id INT(11) UNSIGNED NOT NULL,

total_price DECIMAL(10,2) NOT NULL,

order_date TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,

PRIMARY KEY (id),

FOREIGN KEY (customer_id) REFERENCES customers(id)

);

4. 字符串类型(CHAR、VARCHAR、TEXT)

字符串类型用于存储字符数据,不同的字符串类型有着不同的存储方式和限制。CHAR 类型用于固定长度的字符串,长度不超过 255 个字符。VARCHAR 类型用于可变长度的字符串,长度不超过指定的最大长度。TEXT 类型用于存储较长的字符串,长度上限为 65,535 个字符。

示例代码:

CREATE TABLE users (

id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,

username VARCHAR(50) NOT NULL,

password CHAR(64) NOT NULL,

email VARCHAR(255) NOT NULL,

bio TEXT NOT NULL,

PRIMARY KEY (id)

);

在创建表时,选择合适的数据类型非常重要。根据实际的数据情况来选择合适的数据类型,可以提升数据库性能,减少存储空间的浪费,并避免数据类型转换带来的问题。


数据运维技术 » 了解 MySQL 数据类型及其在表中的应用(mysql数据类型表)