MySQL复制表的几种常用方法
在MySQL中,复制表可以通过多种方式实现,其中最直接的方法是使用 CREATE TABLE ... AS SELECT 语句,它能够快速基于现有表的结构和数据创建新表,以下是几种常见的复制表技巧,适用于不同场景:

-
复制表结构和数据
使用CREATE TABLE new_table AS SELECT * FROM original_table;可以完整复制原表的结构和数据,但需注意,这种方法不会复制原表的索引、主键或自增属性。 -
仅复制表结构
若只需复制结构而不需要数据,可执行:
CREATE TABLE new_table LIKE original_table;
此语句会完整复制原表的字段定义、索引和约束,但数据为空。 -
复制部分数据
通过添加WHERE条件筛选数据,
CREATE TABLE new_table AS SELECT * FROM original_table WHERE id > 100; -
跨数据库复制
在表名前指定数据库名即可实现跨库复制:
CREATE TABLE db2.new_table AS SELECT * FROM db1.original_table;
注意事项:
- 使用
AS SELECT时,新表不会自动继承原表的自动递增(AUTO_INCREMENT)或索引属性,需手动添加。 - 对于大型表,复制操作可能影响性能,建议在低峰期执行。
掌握这些方法,能灵活应对数据备份、测试环境搭建等需求,提升数据库管理效率。
未经允许不得转载! 作者:HTML前端知识网,转载或复制请以超链接形式并注明出处HTML前端知识网。
原文地址:https://www.html4.cn/6155.html发布于:2026-07-22





