MySQL复制表的三种方式(小结)

吾爱主题 阅读:123 2024-04-01 23:50:08 评论:0

复制表结构及其数据

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

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

?
1 create table table_name_new as ( select * from table_name_old);

只复制表结构

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

或者

?
1 create table table_name_new like table_name_old;

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

只复制表数据

如果两个表结构一样

?
1 insert into table_name_new select * from table_name_old;

如果两个表结构不一样

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

注意:很多文章说可以通过如下语句进行数据复制,table_name_new表可以不存在,会在执行的过程中自动创建。其实该SELECT ... INTO形式是使查询结果存储在变量或将其写入文件,即table_name_new是一个变量或者文件。

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

到此这篇关于MySQL复制表的三种方式(小结)的文章就介绍到这了,更多相关MySQL 复制表内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/thinkwon/article/details/106610810

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容