zoukankan      html  css  js  c++  java
  • MySQL中快速复制数据表方法汇总

    本文将着重介绍两个MySQL命令的组合,它将以原有数据表为基础,创建相同结构和数据的新数据表。

    这可以帮助你在开发过程中快速的复制表格作为测试数据,而不必冒险直接操作正在运行 的数据表。

    示例如下:

    将 production 数据库中的 mytbl 表快速复制为 mytbl_new,2个命令如下:

    CREATE TABLE mytbl_new LIKE production.mytbl;
    
    INSERT mytbl_new SELECT * FROM production.mytbl;

    第一个命令是创建新的数据表 mytbl_new ,并复制 mytbl 的数据表结构。

    第二个命令是讲数据表 mytbl 中的数据复制到新表 mytbl_new 。

    注:production.mytbl是指定要复制表的数据库名称为 production 。它是可选的。

    假如没有production. ,MySQL数据库将会假设mytbl在当前操作的数据库。

    其它方法:
    方案1:
    复制整个表 

    CREATE TABLE new_table SELECT * FROM old_table;

    复制,不复制数据 

    CREATE TABLE new_table SELECT * FROM old_table where 0;

    注意:本方案其实只是把select语句的结果建一个表。所以new_table这个表不会有主键、索引。

    方案2:
    假如我们有以下这样一个表:

    id      username    password


    1. 下面这个语句会拷贝表结构到新表newadmin中。 (不会拷贝表中的数据)

    CREATE TABLE newadmin LIKE admin

    2. 下面这个语句会拷贝数据到新表中。 注意:这个语句其实只是把select语句的结果建一个表。所以newadmin这个 表不会有主键,索引。

    CREATE TABLE newadmin AS 
    ( 
    SELECT * 
    FROM admin 
    )

    3. 如果你要真正的复制一个表。可以用下面的语句。

    CREATE TABLE newadmin LIKE admin; 
    INSERT INTO newadmin SELECT * FROM admin;

    4. 我们可以操作不同的数据库。

    CREATE TABLE newadmin LIKE shop.admin; 
    CREATE TABLE newshop.newadmin LIKE shop.admin;

    5. 我们也可以拷贝一个表中其中的一些字段。

    CREATE TABLE newadmin AS 
    ( 
    SELECT username, password FROM admin 
    )

    6. 我们也可以讲新建的表的字段改名。

    CREATE TABLE newadmin AS 
    ( 
    SELECT id, username AS uname, password AS pass FROM admin 
    )

    7. 我们也可以拷贝一部分数据。

    CREATE TABLE newadmin AS 
    ( 
    SELECT * FROM admin WHERE LEFT(username,1) = 's' 
    )

    8. 我们也可以在创建表的同时定义表中的字段信息。

    CREATE TABLE newadmin 
    ( 
    id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY 
    ) 
    AS 
    ( 
    SELECT * FROM admin 
    )

    原文:https://www.cnblogs.com/yaoyao1556/p/3813999.html

  • 相关阅读:
    多重背包POJ1276不要求恰好装满 poj1014多重背包恰好装满
    哈理工1053完全背包
    求最小公倍数与最大公约数的函数
    Bus Pass ZOJ 2913 BFS 最大中取最小的
    POJ 3624 charm bracelet 01背包 不要求装满
    HavelHakimi定理(判断一个序列是否可图)
    z0j1008Gnome Tetravex
    ZOJ 1136 Multiple BFS 取模 POJ 1465
    01背包 擎天柱 恰好装满 zjut(浙江工业大学OJ) 1355
    zoj 2412 水田灌溉,求连通分支个数
  • 原文地址:https://www.cnblogs.com/azhqiang/p/7832093.html
Copyright © 2011-2022 走看看