MySQL复制表的三种方式(小结)
短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
复制表结构及其数据
下面这个语句会拷贝数据到新表中。
注意:这个语句其实只是把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形式是使查询结果存储在变量或将其写入文件,即table_name_new是一个变量或者文件。
select column1,column2,.... into table_name_new from table_name_old;
到此这篇关于MySQL复制表的三种方式(小结)的文章就介绍到这了,更多相关MySQL 复制表内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341