您的位置:金沙游乐场85155 > 大数据库 > mysql复制表以及复制数据库

mysql复制表以及复制数据库

发布时间:2019-10-02 09:54编辑:大数据库浏览(97)

    (一)将旧表复制到新表

    本文给大家分享了好几种复制表结构、表数据的示例介绍,具体详情请看下文吧。

    1、CREATE TABLE新表 SELECT* FROM旧表;

    1、复制表结构及数据到新表

    该语句只是复制表结构以及数据,它不会复制与表关联的其他数据库对象,如索引主键约束外键约束触发器等。

    CREATE TABLE 新表SELECT * FROM 旧表

     

    这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable;来删除。

    1. CREATE TABLE if not exists new_table

    2. SELECT col1, col2, col3

    3. FROM

    4. existing_table

    5. WHERE

    6. conditions;

    不过这种方法的一个最不好的地方就是新表中没有了旧表的primary key、Extra(auto_increment)等属性。需要自己用"alter"添加,而且容易搞错。

    2、MySQL 数据库不支持 SELECT ... INTO 语句,但支持 INSERT INTO ... SELECT 

    2、只复制表结构到新表

    金沙85155登入,其中在使用select  into 语句与insert into select 语句时,新表要提前建立,并且新表与旧表的字段属性要一样才可以。

    CREATE TABLE 新表SELECT * FROM 旧表WHERE 1=2

    create table 新表 like 旧表;

    或CREATE TABLE 新表LIKE 旧表

    新表建立之后才可以使用下面的两个语句:

    3、复制旧表的数据到新表(假设两个表结构一样)

    SELECT * INTO 新表   FROM  旧表;

    INSERT INTO 新表SELECT * FROM 旧表

    INSERT INTO  新表  SELECT * FROM  旧表;

    4、复制旧表的数据到新表(假设两个表结构不一样)

    只复制希望的列插入到另一个已存在的表中:

    INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表

    INSERT INTO  新表  (column_name(s))  SELECT   column_name(s)  FROM  旧表;

    5、可以将表1结构复制到表2

    实例:INSERT INTO Websites (name, country) SELECT app_name, country FROM apps;

    SELECT * INTO 表2 FROM 表1 WHERE 1=2

     

    6、可以将表1内容全部复制到表2

    (二)复制相同表结构

    SELECT * INTO 表2 FROM 表1

     

    7、 show create table 旧表;

    对于mysql的复制相同表结构方法,有create table as 和create table like 两种

    这样会将旧表的创建命令列出。我们只需要将该命令拷贝出来,更改table的名字,就可以建立一个完全一样的表

    create table 新表 like 旧表;

    8、mysqldump

    create table 新表 as select * from 旧表 limit 0;

    用mysqldump将表dump出来,改名字后再导回去或者直接在命令行中运行

    二者的区别:

    9、复制旧数据库到新数据库(复制全部表结构并且复制全部表数据)

    本文由金沙游乐场85155发布于大数据库,转载请注明出处:mysql复制表以及复制数据库

    关键词:

上一篇:八年数据库之路的感悟金沙85155登入:

下一篇:没有了