要使用LIKE运算符实现此目的,以下是语法-
CREATE TABLE yourTableName2 LIKE yourTableName1;
为了理解语法,让我们创建一个表并将一些记录插入其中。以下是创建表的查询-
mysql> create table Employee −> ( −> EmployeeId int −> , −> EmployeeName varchar(100) −> );
借助insert命令将记录插入表中。查询如下-
mysql> insert into Employee values(1,'Carol'); mysql> insert into Employee values(2,'John'); mysql> insert into Employee values(3,'Johnson');
在select语句的帮助下显示所有记录。显示所有记录的查询如下-
mysql> select *from StudentTable;
以下是输出-
+------+---------+ | Id | Name | +------+---------+ | 3 | Johnson | +------+---------+ 1 row in set (0.00 sec)
现在您可以实现我在开始时讨论的上述语法。查询如下,以在LIKE运算符的帮助下创建表。
mysql> create table StudentModifyTableDemo Like Employee;
您可以借助desc命令检查新表的定义。查询如下-
mysql> desc StudentModifyTableDemo;
以下是输出-
+--------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+---------+-------+ | EmployeeId | int(11) | YES | | NULL | | | EmployeeName | varchar(100) | YES | | NULL | | +--------------+--------------+------+-----+---------+-------+ 2 rows in set (0.12 sec)
现在,您可以将Employee表的所有记录插入到StudentModifyTableDemo表中。
查询如下-
mysql> insert into StudentModifyTableDemo select *from Employee; Records: 3 Duplicates: 0 Warnings: 0
现在,您可以检查第二个表中是否存在所有记录。查询如下-
mysql> select *from StudentModifyTableDemo;
以下是输出-
+------------+--------------+ | EmployeeId | EmployeeName | +------------+--------------+ | 1 | Carol | | 2 | John | | 3 | Johnson | +------------+--------------+ 3 rows in set (0.00 sec)