一、需求的提出
完全的复制MySQL的数据表,包括表的结构,索引,默认值等
二、步骤
- ①使用
SHOW CREATE TABLE
命令获取创建数据表(CREATE TABLE) 语句,该语句包含了原数据表的结构,索引等。 - ②复制以下命令显示的SQL语句,修改数据表名,并执行SQL语句,通过以上命令 将完全的复制数据表结构。
- ③如果想复制表的内容,可以使用
INSERT INTO ... SELECT
语句来实现。
三、四种结构
1、只复制表结构到新表
CREATE TABLE 新表 SELECT * from 旧表;
或者
CREATE TABLE 新表 LIKE 旧表;
特殊注意区别两种方法的不同
前一种方式是复制时的主键类型和自增方式是不会复制过去的,而后一种方式是把旧表的所有字段类型都复制到新表。
2、复制表结构及数据到新表
CREATE INTO 新表 SELECT * FROM 旧表;
3、复制旧表的数据到新表(新旧表的结构一样)
INSERT INTO 新表 SELECT * 旧表;
4、赋值旧表的数据到新表(新旧表的结构不一样)
INSERT INTO 新表(字段1,字段2,...) SELECT 字段1,字段2,... FROM 旧表;