📅  最后修改于: 2023-12-03 14:47:40.931000             🧑  作者: Mango
在 SQL 中,数据类型是用于定义表中的列所存储的数据类型的。在创建表时必须为每个列定义数据类型。
SQL 数据类型分为以下类型:
SQL 中主要有以下几种数值类型:
| 数据类型 | 描述 |
| ------------- | ------------------------------------------------------------ |
| INT
| 用于存储正负整数,范围是 -2147483648 到 2147483647 |
| SMALLINT
| 用于存储正负整数,范围是 -32768 到 32767 |
| BIGINT
| 用于存储正负整数,范围是 -9223372036854775808 到 9223372036854775807 |
| 数据类型 | 描述 |
| -------------- | -------------- |
| DECIMAL
| 固定精度的小数 |
| FLOAT
| 浮点数 |
| DOUBLE
| 双精度浮点数 |
SQL 中主要有以下几种字符串类型:
| 数据类型 | 描述 |
| ------------ | -------------------------------------- |
| CHAR
| 固定长度的字符串,范围为 0 到 255 |
| VARCHAR
| 可变长度的字符串,范围为 0 到 65535 |
| TEXT
| 可变长度的字符串,范围为 0 到 65535 |
| TINYTEXT
| 可变长度的字符串,最大长度为 255 字节 |
| MEDIUMTEXT
| 可变长度的字符串,最大长度为 16777215 |
| LONGTEXT
| 可变长度的字符串,最大长度为 4294967295 |
SQL 中主要有以下几种日期/时间类型:
| 数据类型 | 描述 |
| --------- | ------------------------------------ |
| DATE
| 用于存储日期,格式为 YYYY-MM-DD |
| TIME
| 用于存储时间,格式为 HH:MM:SS.SSS |
| DATETIME
| 用于存储日期和时间,格式为 YYYY-MM-DD HH:MM:SS.SSS|
| YEAR
| 用于存储年份,格式为 YYYY |
SQL 中只有一种布尔类型:
| 数据类型 | 描述 |
| -------- | ------------ |
| BOOL
| 用于存储真或假 |
SQL 中主要有以下几种二进制类型:
| 数据类型 | 描述 |
| ----------------- | ---------------------------- |
| BINARY
| 存储固定长度的二进制数据 |
| VARBINARY
| 存储可变长度的二进制数据 |
| BLOB
| 存储可变长度的二进制数据 |
| TINYBLOB
| 存储最大长度为 255 字节的二进制数据 |
| MEDIUMBLOB
| 存储最大长度为 16777215 字节的二进制数据 |
| LONGBLOB
| 存储最大长度为 4294967295 字节的二进制数据 |
下面是一个例子,演示如何创建一个包含不同数据类型的表:
CREATE TABLE products (
id INT,
name VARCHAR(255),
description TEXT,
price DECIMAL(10, 2),
release_date DATE,
available BOOL
);