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
转载于:https://www.cnblogs.com/azhqiang/p/7832093.html
MySQL中快速复制数据表方法汇总相关推荐
- mysql 快速复制_MySQL中快速复制数据表方法汇总
本文将着重介绍两个MySQL命令的组合,它将以原有数据表为基础,创建相同结构和数据的新数据表. 这可以帮助你在开发过程中快速的复制表格作为测试数据,而不必冒险直接操作正在运行 的数据表. 示例如下: ...
- mysql 复制表中的数据_MySQL中快速复制数据表方法汇总
本文将着重介绍两个MySQL命令的组合,它将以原有数据表为基础,创建相同结构和数据的新数据表. 这可以帮助你在开发过程中快速的复制表格作为测试数据,而不必冒险直接操作正在运行 的数据表. 示例如下: ...
- oracle中快速复制数据表(创建数据表)
1.普通创建表方式如下: create table emp(empno number(4) primary key,ename varchar2(20),sal number(7,2)); 2.快速创 ...
- MySql中,复制旧表结构到新表
# 创建学生表 create table student(age int,name varchar(32))engine myisam charset utf8; insert into studen ...
- mysql中复合主键指什么作用_MySQL中什么是数据表的复合主键
MySQL中什么是数据表的复合主键 发布时间:2020-11-23 14:03:11 来源:亿速云 阅读:108 作者:小新 这篇文章主要介绍MySQL中什么是数据表的复合主键,文中介绍的非常详细,具 ...
- 周末杂谈:在MYSQL中,添加数据行后,使用右外连接查询所有课程的选修情况,要求列出课程编号、课程名称、选修人数,表中没有的课程列值为空的解决方法
周末杂谈:在MYSQL中,添加数据行后,使用右外连接查询所有课程的选修情况,要求列出课程编号.课程名称.选修人数,表中没有的课程列值为空的解决方法 实验前期准备 course表(课程表) 在其中: c ...
- mysql数据库复制数据表时的风险
最近在使用redis的缓存技术时,在项目中需要在插入mysql数据表记录的同时,缓存数据到redis.在创建数据表时,为了方便,直接使用复制另外一个数据库中的数据表,结果就悲剧了 package co ...
- mysql vacuum_PostgreSQL中快速对系统表实现vacuum full
PostgreSQL中快速对系统表实现vacuum full vacuum full会锁表,而且效率很低,在实际中不可能使用vacuum来缩小pg_class,,这样会有很长的停机时间. 其实要实现v ...
- MySQL快速复制数据库的方法
http://blog.csdn.net/ssyan/article/details/9292099 MySQL快速复制数据库的方法 2013-07-10 16:0447162人阅读评论(2)收藏举报 ...
最新文章
- RMI远程方法调用讲解教程
- ISE include 头文件错误的解决办法
- 判断python模型是否安装的办法
- MATLAB机器学习系列-12:蚁群算法优化原理及其matlab实现
- 【BZOJ4417】: [Shoi2013]超级跳马
- ABAP function module 的使用
- ASP.NET Core托管运行Quartz.NET作业调度详解
- oracle监听的动态注册和静态注册
- 边缘计算平台类产品概览
- Python,Day2 - 数据类型,运算,列表操作,字典
- Python源码深度解析—Python提供的C API
- SpringCloud观后感
- NHibernate的缓存管理机制
- 【洋哥聊运营】5点讲透增长
- 从分类到选型,一文了解 SITOP 电源
- 4 WCF中的RPC和OneWay
- Unity Shader 基于 RGB 插值的 Wireframe 描边着色器
- python手机销售系统_京东手机销售数据分析kaggle复盘python+tableau分析
- 人工智能_游戏AI –行为树简介
- 原创:拆机联想Y330笔记本
热门文章
- mysql重复你数据标识_MySQL 处理重复数据
- 小米路由器4a刷第三方固件_小米路由器4A的断网问题初探
- 如何在电脑中使用python_教你怎么在windows上用python获得CPU信息
- 用python处理excel表格_使用Python处理excel表格(openpyxl)及表格中的中文处理
- 线性判别用于提取词向量_历年试题公开 | 2017级线性代数(I)期末试题
- 教师国培计算机计划,国培计划,教师个人发展规划.doc
- 数据脱敏和加密_数据脱敏和数据加密的区别--工作需要,对其进行了简单的整理...
- 如何拷贝工程_如何获得微信小游戏跳一跳源码以及源代码组合包括哪些
- python复制文件夹不阻塞_Python线程,线程不阻塞
- spark mlib行矩阵(RowMatrix)入门