一、MySQL复制表的几种方式

我们首先创建表stuents_score,利用SQL语句查看创建表的结构与列名字段。

mysql 怎么复制粘贴 mysql怎么复制表_字段

之后查看students_score表数据,便于之后观察对比。

mysql 怎么复制粘贴 mysql怎么复制表_表数据_02

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_03

1、CREATE TABLE table_copy SELECT...FROM table形式

如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等。 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的,但是可以复制表的内容。

mysql 怎么复制粘贴 mysql怎么复制表_表数据_04

查看表结果与表的数据。

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_05

这里发现ID并没有主键约束,并没有完全copy到表students_score的表结构。

查看表数据

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_06

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_07

CREATE TABLE table_copy SELECT * FROM table

是有数据的。

2、CREATE TABLE table_copy LIKE table形式

该形式只Copy表的结构,但是不能copy表的内容

mysql 怎么复制粘贴 mysql怎么复制表_mysql 复制方式_08

查看表结构

mysql 怎么复制粘贴 mysql怎么复制表_表数据_09

这里的ID主键有约束,跟原始表students_score是一样的。

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_10

但是是没有数据的。

mysql 怎么复制粘贴 mysql怎么复制表_表数据_11

3、复制完整的(表结构+数据)表形式

该形式就是在形式2的基础上补充的,既可以copy到表的结构,又可以copy到数据。

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_12

执行CREATE TABLE table_copy LIKE table之后再利用INSERT INTO table_copy SELECT* FROM table将完整的数据copy到复制表中。

注意这是两个语句,不是一个语句。用“;”封号隔开。

mysql 怎么复制粘贴 mysql怎么复制表_表数据_13

查看数据

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_14

mysql 怎么复制粘贴 mysql怎么复制表_字段_15

数据是完整的。

4、CREATE TABLE table_copy AS (SELECT ... FROM table)的形式

该形式就是第一种形式CREATE TABLE table_copy SELECT ... FROM table的延伸。

该形式是复制一个表中的一些字段。

(1)复制表中一些字段

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_16

类似于

mysql 怎么复制粘贴 mysql怎么复制表_mysql 复制方式_17

同样只是copy了表的数据,并没有copy表的内容

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_18

查看表数据

mysql 怎么复制粘贴 mysql怎么复制表_mysql 复制方式_19

mysql 怎么复制粘贴 mysql怎么复制表_数据_20

(2)复制表中一些字段的同时对copy的表进行定义。

mysql 怎么复制粘贴 mysql怎么复制表_表数据_21

查看表结构与表数据

mysql 怎么复制粘贴 mysql怎么复制表_数据_22

这里主键约束并不是从原始表来的,而是copy的时候自定义的。

mysql 怎么复制粘贴 mysql怎么复制表_mysql 怎么复制粘贴_23

mysql 怎么复制粘贴 mysql怎么复制表_mysql 复制方式_24

(3)复制表中某些字段的同时对列名进行重命令

mysql 怎么复制粘贴 mysql怎么复制表_mysql 复制方式_25

查看表结构

mysql 怎么复制粘贴 mysql怎么复制表_表数据_26

查看表数据

mysql 怎么复制粘贴 mysql怎么复制表_字段_27

mysql 怎么复制粘贴 mysql怎么复制表_数据_28

本文由职坐标整理并发布,希望同学们能熟练掌握MySQL复制表的几种方式。

了解更多详情请关注职坐标MySQL数据库频道!