暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL复制表的三种方式

技术人成长之路 2021-07-22
1077



复制表结构及其数据

下面这个语句会拷贝数据到新表中。

注意:这个语句其实只是把select语句的结果建一个表,所以新表不会有主键,索引。

create table table_name_new as (select * from table_name_old);


只复制表结构

create table table_name_new as select * from table_name_old where 1=2;

或者

create table table_name_new like table_name_old;

注意:前一种方式是不会复制主键类型,索引的,而后一种方式是把旧表的所有字段类型都复制到新表。


只复制表数据

如果两个表结构一样

insert into table_name_new select * from table_name_old;

如果两个表结构不一样

insert into table_name_new(column1,column2...) select column1,column2... from table_name_old;

注意:很多文章说可以通过如下语句进行数据复制,table_name_new表可以不存在,会在执行的过程中自动创建。其实该[SELECT ... INTO
](https://dev.mysql.com/doc/refman/8.0/en/select-into.html)形式是使查询结果存储在变量或将其写入文件,即table_name_new是一个变量或者文件。

select column1,column2,.... into table_name_new from table_name_old;



END


点个在看你最好看


文章转载自技术人成长之路,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论