如何自动定义 MySQL 表的结构与另一个表的结构相同?


带有 LIKE 关键字的 CREATE TABLE 命令将能够定义 MySQL 表的结构与另一个表的结构相同。

语法

CREATE TABLE new_table LIKE old_table;

示例

mysql> Create table employee(ID INT PRIMARY KEY NOT NULL AUTO_INCREMENT, NAME VARCHAR(20));
Query OK, 0 rows affected (0.21 sec)

mysql> Describe employee;

+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| ID    | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME  | varchar(20) | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+

2 rows in set (0.07 sec)

下面的查询将创建一个名为 employee1 的表,其结构与 employee 表类似。可以通过运行 DESCRIBE 查询来检查它。

mysql> create table employee1 like employee;
Query OK, 0 rows affected (0.19 sec)

mysql> describe employee1;

+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| ID    | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME  | varchar(20) | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+

2 rows in set (0.14 sec)

更新于: 2020 年 6 月 20 日

108 次浏览

开启你的 职业生涯

完成课程获得认证

开始
广告