mysql 复制表结构(包括索引等)、表内容


===============================================

 2019/7/16_第1次修改                       ccb_warlock

 

===============================================

 mysql库中有一张表查询要较大,最后采取的方案是清理数据只保留近期。但是有需要保留原表所有数据的备份,由此才尝试了复制表结构、表内容的sql脚本。

 


 

 一、复制表结构(包括索引等)

CREATE TABLE <新表名>  
SELECT * FROM <老表名>;

 

 二、复制表内容

INSERT INTO <新表名>
SELECT * FROM <老表名>;

 

如果新、老表的表结构不一致时,需要指定具体的字段信息才能做insert操作,可以使用下面的sql语句。

INSERT INTO <新表名>(字段1,
                    字段2,
                    …)
SELECT 字段1, 字段2, …
from <旧表名>

 

PS.曾经尝试通过一个sql语句实现这2个功能,但是试验后发现一个语句始终无法解决索引、外键等无法复制的问题,故最后还是选择分2步走。

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM