(一)将旧表复制到新表

正文给我们享受了一点种复制表结构、表数据的言传身教介绍,具体详情请看下文吧。

1、CREATE
TABLE新表
SELECT*
FROM旧表;

壹、复制表结构及数据到新表

该语句只是复制表结构以及数额,它不会复制与表关联的别样数据库对象,如索引,主键约束,外键约束,触发器等。

CREATE TABLE 新表SELECT * FROM 旧表

 

那种方法会将oldtable中兼有的内容都拷贝过来,当然大家能够用delete from
newtable;来删除。

  1. CREATE TABLE if not exists new_table

  2. SELECT col1, col2, col3

  3. FROM

  4. existing_table

  5. WHERE

  6. conditions;

可是那种艺术的三个最不好的地点正是新表中尚无了旧表的primary
key、Extra(auto_increment)等品质。须求协调用”alter”添加,而且简单搞错。

贰、MySQL 数据库不支持 SELECT … INTO
语句,但支撑 INSERT INTO …
SELECT 

二、只复制表结构到新表

其间在运用select
 into 语句与insert into select
语句时,新表要提前建立,并且新表与旧表的字段属性要平等才足以。

CREATE TABLE 新表SELECT * FROM 旧表WHERE 1=2

create
table 新表 like 旧表;

或CREATE TABLE 新表LIKE 旧表

新表建立以后才得以应用上边包车型客车三个语句:

三、复制旧表的数额到新表(倘使多少个表结构同样)

SELECT * INTO 新表   FROM  旧表;

INSERT INTO 新表SELECT * FROM 旧表

INSERT INTO  新表  SELECT * FROM  旧表;

4、复制旧表的数据到新表(假使三个表结构不一致)

只复制希望的列插入到另3个已存在的表中:

INSERT INTO 新表(字段1,字段2,…….) SELECT 字段1,字段2,…… FROM
旧表

INSERT INTO  新表  (column_name(s))
 SELECT   column_name(s)  FROM  旧表;

5、可以将表壹构造复制到表2

实例:INSERT INTO Websites (name,
country) SELECT
app_name, country FROM
apps;

SELECT * INTO 表2 FROM 表1 WHERE 1=2

 

陆、能够将表一内容总体复制到表二

(二)复制相同表结构

SELECT * INTO 表2 FROM 表1

 

7、 show create table 旧表;

对于mysql的复制相同表结构形式,有create
table as 和create table like 三种

那样会将旧表的创制命令列出。大家只供给将该命令拷贝出来,更改table的名字,就能够建立多少个截然1致的表

create table 新表 like
旧表;

8、mysqldump

永利皇宫登录网址 ,create table 新表 as select
* from 旧表 limit 0;

用mysqldump将表dump出来,改名字后再导回去可能直接在指令行中运转

两方的不一样:

玖、复制旧数据库到新数据库(复制全部表结构并且复制全体表数据)

网站地图xml地图