MySQL复制表
    通常复制表所采用CREATE TABLE .... SELECT 方式将资料复制,但无法将旧表中的索引,约束(除非空以外的)也复制。
 
完整复制MySQL数据表所需步骤:
方式一
    1.使用SHOW CREATE TABLE 命令获取创建数据表的create table语句,语句会包含原表的结构,索引,存储引擎,字符集。
    2.更改其中的表名称,再执行create table语句。
    3.复制表的资料,使用INSERT INTO ... SELECT 语句。
方式二
    CREATE TABLE <table_name> LIKE <old_table>;
     INSERT INTO <table_name> SELECT * FROM <old_table>;
 
 
获取创建表的SQL语句:
mysql> show create table index_tab01\G
*************************** 1. row ***************************
       Table: index_tab01
Create Table: CREATE TABLE `index_tab01` (
  `id` int(11) NOT NULL DEFAULT '0',
  `col01` varchar(10) NOT NULL DEFAULT '',
  `col02` text,
  UNIQUE KEY `index_un` (`col01`),
  KEY `indx_01` (`col01`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
 
更改表名称,后执行创建语句:
mysql> CREATE TABLE `copy_tab01` (
    ->   `id` int(11) NOT NULL DEFAULT '0',
    ->   `col01` varchar(10) NOT NULL DEFAULT '',
    ->   `col02` text,
    ->   UNIQUE KEY `index_un` (`col01`),
    ->   KEY `indx_01` (`col01`)
    -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8
    -> ;
Query OK, 0 rows affected (0.01 sec)
 
复制表的资料
mysql> insert into copy_tab01 select * from index_tab01;
Query OK, 4 rows affected (0.01 sec)
Records: 4  Duplicates: 0  Warnings: 0
 
 
mysql> select * from copy_tab01;
+----+--------+---------------+
| id | col01  | col02         |
+----+--------+---------------+
|  0 | Name01 | This is Test! |
|  0 | Name02 | This is Test! |
|  0 | Name03 | This is Test! |
|  0 | Name04 | This is Test! |
+----+--------+---------------+
4 rows in set (0.00 sec)
 
mysql> select * from index_tab01;
+----+--------+---------------+
| id | col01  | col02         |
+----+--------+---------------+
|  0 | Name01 | This is Test! |
|  0 | Name02 | This is Test! |
|  0 | Name03 | This is Test! |
|  0 | Name04 | This is Test! |
+----+--------+---------------+
4 rows in set (0.00 sec)
 
方式二,复制完整的表
mysql> create table copy_tab02 like index_tab01;
Query OK, 0 rows affected (0.00 sec)
 
mysql> show create table copy_tab02\G
*************************** 1. row ***************************
       Table: copy_tab02
Create Table: CREATE TABLE `copy_tab02` (
  `id` int(11) NOT NULL DEFAULT '0',
  `col01` varchar(10) NOT NULL DEFAULT '',
  `col02` text,
  UNIQUE KEY `index_un` (`col01`),
  KEY `indx_01` (`col01`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
 
mysql> insert into copy_tab02 select * from index_tab01;
Query OK, 4 rows affected (0.00 sec)
Records: 4  Duplicates: 0  Warnings: 0
 
mysql> select * from copy_tab02;
+----+--------+---------------+
| id | col01  | col02         |
+----+--------+---------------+
|  0 | Name01 | This is Test! |
|  0 | Name02 | This is Test! |
|  0 | Name03 | This is Test! |
|  0 | Name04 | This is Test! |
+----+--------+---------------+
4 rows in set (0.00 sec)
 
 
    
 

MySQL->复制表[20180509]的更多相关文章

  1. DB-MySQL:MySQL 复制表

    ylbtech-DB-MySQL:MySQL  复制表 1.返回顶部 1. MySQL 复制表 如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TA ...

  2. MySQL 复制表

    MySQL 复制表 如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的. 本文将为大家介绍如何完整 ...

  3. 二十七、MySQL 复制表

    MySQL 复制表 如果我们需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的. 本章节将为大家介绍如何完 ...

  4. 吴裕雄--天生自然MySQL学习笔记:MySQL 复制表

    如果需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的. 如何完整的复制MySQL数据表,步骤如下: 使用 ...

  5. MySQL复制表-SELECT INTO FROM

    基础Table: mysql> select * from staff; +----+----------+-------+ | id | name | slary | +----+------ ...

  6. MySQL复制表-INSERT INTO SELECT

    基础table为: mysql> select * from staff; +----+----------+-------+ | id | name | slary | +----+----- ...

  7. MySQL复制表-CREATE SELECT

    假设存在以下Table: mysql> select * from staff; +----+----------+-------+ | id | name | slary | +----+-- ...

  8. mysql复制表

    create table 表名 like 要复制的表名  //复制表结构 insert into 表名 select * from 要复制的表名  //复制数据 方法2,一般不推荐,如果后台加数据,可 ...

  9. mysql-10临时表、复制表

    1.创建临时表 mysql临时表在我们需要保存一些临时数据时非常有用. 临时表只在当前连接可见,当关闭连接时,mysql会自动删除表并释放所有空间. 如果使用客户端创建临时表,只有在管不客户端程序时才 ...

  10. 【MYSQL笔记2】复制表,在已有表的基础上设置主键,insert和replace

    之前我自己建立好了一个数据库xscj:表xs是已经定义好的 具体的定义数据类型如下: 为了复制表xs,我们新建一个表名为xstext,使用下列语句进行复制xs,或者说是备份都可以: create ta ...

随机推荐

  1. volley4--RequestQueue

    源码: /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, V ...

  2. css 之单行文本显示省略和多行文本省略

    一.单行文本显示省略号...... overflow:hidden; white-space:nowrap; text-overflow:ellipsis; <!DOCTYPE html> ...

  3. ZOJ Problem Set – 2321 Filling Out the Team

    Time Limit: 2 Seconds      Memory Limit: 65536 KB Over the years, the people of the great city of Pi ...

  4. Druid学习---配置_DruidDataSource参考配置

    [更多参考]https://www.cnblogs.com/niejunlei/p/5977895.html 配置_DruidDataSource参考配置 以下是一个参考的连接池配置: <bea ...

  5. winform中webBrowser模拟网页操作中遇到的问题

    我们通过网页上传一些特殊数据的时候,由于必填项众多,数量量大的时候,会发现工作相当繁琐,前段时间做了一个winform内嵌webBrowser模拟网页上传文档的小工具,发现了许多问题,总结一下: 先说 ...

  6. PHP: APC Configuration and Usage Tips and Tricks

    原文链接:http://www.if-not-true-then-false.com/2012/php-apc-configuration-and-usage-tips-and-tricks/3/ T ...

  7. 【bbs】index、post

    列表 奇数行和偶数行设置不同的背景 http://blog.csdn.net/facecrazy/article/details/51252850 实现ul li中的内容上下左右居中,不用设置li宽度 ...

  8. 简单属性margin和padding

    关于margin属性的介绍 margin:20px 上 右 下 左 都是20px margin:20px 40 px 上 下 20px 左 右 40px margin:20px 40px  60px ...

  9. XCODE7 和IOS9适配后的一些问题

    网上比较常规的几个问题就不细说了. 什么HTTPS.bitcode.什么什么的. 记录几个自己又遇到了但是网上没有说的. 启动应用报错, *** Terminating app due to unca ...

  10. 为什么要使用GetSafeHwnd()函数

    当我们想得到一个窗口对象(CWnd的派生对象)指针的句柄(HWND)时,最安全的方法是使用GetSafeHwnd()函数,通过下面的例子来看其理由: CWnd *pwnd = FindWindow(“ ...