如何利用与另一张表相同的结构自动定义 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)

更新于: 20-6-2020

108 次浏览

开启你的 职业生涯

完成课程,获取认证

立即开始
广告