MySQL 创建表语句详解(mysql下创建表语句)
MySQL 是一款强大的关系型数据库,为了存储和管理数据,我们要使用 MySQL 中的表。创建表是 MySQL 中最基本的操作,本文将详细介绍 MySQL 的创建表语句。
MySQL 创建表语句的通用语法如下:
CREATE TABLE table_name (
column1 datatype, column2 datatype,
column3 datatype, ....
);
我们来解读一下上述语法:
1. **CREATE TABLE**:这个命令告诉 MySQL ,我们将创建一个新的表。
2. **table_name**:这个命令后面跟着我们所要创建的表的名称。
3. 包含列名和数据类型的括号:列指的是表中的列,数据类型指的是列所存储的数据类型。
4. 每列由逗号分隔,最后一列不能有逗号。
以下是一个 MySQL 创建表的示例:
“`mysql
CREATE TABLE customers (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(30) NOT NULL,
last_name VARCHAR(30) NOT NULL,
eml VARCHAR(50),
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
我们来分解这个 MySQL 表的创建语句:
1. 表名为 customers。
2. 表中的字段包括:id、first_name、last_name、eml 和 reg_date。
3. id 字段指定为主键,类型为 INT,并设置为自动递增,UNSIGNED 表示只能是正整数。
4. first_name 和 last_name 字段的类型为 VARCHAR,并设置为 NOT NULL,即不能为空。
5. eml 的类型为 VARCHAR,最大长度为 50。
6. reg_date 是一个 TIMESTAMP 类型的字段,存储当前时间,并且每次更新时都会自动更新为当前时间。
接下来,我们来看看 MySQL 中可用的数据类型:
| 数据类型 | 描述 || ---------------- | ------------------------------------------------------------ |
| INT(size) | 整型数据类型,size 参数指定最大值,可以是从 1 到 11。如果没有指定 size,则默认为 INT(11)。 || BIGINT(size) | 类似于 INT,但是存储范围更大。大小参数最大可以是 20。 |
| FLOAT(size,d) | 浮点数值,size 是总位数,d 是小数点后面的位数。(例:FLOAT(7,4)) || DOUBLE(size,d) | 双精度浮点数。类似于 FLOAT,但范围更广,支持更高的精度。 |
| DECIMAL(size, d) | 它与 FLOAT 相似,但支持更高精度。 || VARCHAR(size) | 可变长度的字符串,最大长度 size。 |
| CHAR(size) | 定长的字符串,最大长度 size。 || TEXT | 存储大量字符数据的字段类型。 |
| BLOB | 存储二进制数据的字段类型(图像、PDF 文件等)。 || ENUM | 枚举值,允许在列中设置一组选项。 |
| SET | 可以存储一组字符串,但允许使用逗号分隔。 |
注意:表格中的大小参数 size 可以是实数或整数,并且可以使用括号指定。浮点和 double 存储的小数位数也可以在参数中指定。
我们来看一个完整的 MySQL 创建表的示例,其中包含了各类型的数据:
```mysqlCREATE TABLE test (
id INT(6), bignum BIGINT(20),
fnum FLOAT(10,2), dnum DOUBLE(18,5),
salary DECIMAL(7,2), name VARCHAR(30),
birthday DATE, about TEXT,
photo BLOB, sex ENUM('male', 'female'),
interests SET('football', 'tennis', 'basketball'));
在这个示例中,我们创建了一个名为 test 的表。表中包含了各种类型的数据,例如整型、浮点型、字符型、日期型、枚举值和 set 类型。
通过这篇文章,我们已经学习了 MySQL 的创建表语句,掌握了常见数据类型的使用方法,同时也知道了如何设置主键、自动增长和约束条件。希望本文对你在 MySQL 数据库的学习和实践中有所帮助。