MySQL 复制表(表结构、表结构和数据)
MySQL 中使用 命令行 复制表结构及数据的方法主要有以下几种:
1、只复制表结构
CREATE TABLE new_table SELECT * FROM old_table WHERE 1=2;
或者:
CREATE TABLE new_table LIKE old_table;
注意: 上面两种方式,第1种方式是 复制时,主键类型和自增方式是不会复制过去的;而第2种是把 old_table 的所有字段类型都复制到。
2、复制表结构和数据
CREATE TABLE new_table SELECT * FROM old_table;
3、复制旧表中的数据到新表中(假设:两个表的表结构是一样的)
INSERT INTO new_table SELECT * FROM old_table;
注意: new_table 表必须已存在。 若不存在,则可以用 第1种方式复制表结构: CREATE TABLE new_table LIKE old_table;
实例演示 :
mysql> create table tab_result_2020 like tab_result;
Query OK, 0 rows affected (0.24 sec) mysql> desc tab_result_2020;
+------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------------+--------------+------+-----+---------+-------+
| lotteryid | int(11) | NO | PRI | NULL | |
| lotteryissue | varchar(12) | NO | PRI | NULL | |
| ballid | varchar(10) | NO | PRI | NULL | |
| source | varchar(100) | NO | PRI | NULL | |
| hteam_half_score | varchar(30) | YES | | NULL | |
| vteam_half_score | varchar(30) | YES | | NULL | |
| hteam_full_score | varchar(30) | YES | | NULL | |
| vteam_full_score | varchar(30) | YES | | NULL | |
| result | varchar(10) | YES | | NULL | |
| addtime | datetime | YES | | NULL | |
| status | int(10) | YES | | NULL | |
| spv | varchar(30) | YES | | NULL | |
| spv_ext | varchar(30) | YES | | NULL | |
| cron_times | int(10) | YES | | NULL | |
| error_times | int(10) | YES | | NULL | |
+------------------+--------------+------+-----+---------+-------+
15 rows in set (0.01 sec) mysql> desc tab_result;
+------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------------+--------------+------+-----+---------+-------+
| lotteryid | int(11) | NO | PRI | NULL | |
| lotteryissue | varchar(12) | NO | PRI | NULL | |
| ballid | varchar(10) | NO | PRI | NULL | |
| source | varchar(100) | NO | PRI | NULL | |
| hteam_half_score | varchar(30) | YES | | NULL | |
| vteam_half_score | varchar(30) | YES | | NULL | |
| hteam_full_score | varchar(30) | YES | | NULL | |
| vteam_full_score | varchar(30) | YES | | NULL | |
| result | varchar(10) | YES | | NULL | |
| addtime | datetime | YES | | NULL | |
| status | int(10) | YES | | NULL | |
| spv | varchar(30) | YES | | NULL | |
| spv_ext | varchar(30) | YES | | NULL | |
| cron_times | int(10) | YES | | NULL | |
| error_times | int(10) | YES | | NULL | |
+------------------+--------------+------+-----+---------+-------+
15 rows in set (0.01 sec)
从 tab_result 表中复制数据到 tab_result_2020 表中:
mysql> select count(*) from tab_result where addtime like '2020-%';
+----------+
| count(*) |
+----------+
| 337760 |
+----------+
1 row in set, 1 warning (0.30 sec) mysql> insert into tab_result_2020 select * from tab_result where addtime like '2020-%';
Query OK, 337760 rows affected, 1 warning (12.85 sec)
Records: 337760 Duplicates: 0 Warnings: 0
4、复制 旧表中的数据到新表中(假设:两个表的表结构不一样)
INSERT INTO new_table(filed1, filed2, ...) SELECT filed1, filed2, ... FROM old_table;
注意: new_table 和 old_table 两个表的字段必须一致,否则会出现数据转换错误。
MySQL 复制表(表结构、表结构和数据)的更多相关文章
- MySQL复制同一个服务器的表结构和表数据
例如,现在服务器上有数据库 dbx 和 dby,dbx中有很多表,要把dbx中的表全部复制到dby,如下操作: 首先: use dby; [复制表结构] CREATE TABLE user LIKE ...
- MySQL 复制已存在的表生成新表
从已有的表创建一个新的空表 CREATE TABLE new_table LIKE old_table; 注意: create table ... like 创建的表会保留原有表的字段.索引的定义,但 ...
- 14.19 InnoDB and MySQL Replication InnoDB 和MySQL 复制:
14.19 InnoDB and MySQL Replication InnoDB 和MySQL 复制: MySQL 复制工作对于InnoDB 表和对于MyISAM表. 它是可能使用复制的方式 存储引 ...
- MySQL 复制表结构
200 ? "200px" : this.width)!important;} --> 介绍 有时候我们需要原封不动的复制一张表的表结构来生成一张新表,MYSQL提供了两种便 ...
- mysql 复制表结构、表数据的方法
From: http://blog.163.com/yaoyingying681@126/blog/static/109463675201191173221759/ MySQL 添加列,修改列,删除列 ...
- mysql复制表结构及检查表、存储过程是否存在
mysql命令行复制表结构的方法: 1.只复制表结构到新表 CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2 或者 CREATE TABLE 新表 LIKE 旧表 ...
- MySQL复制表结构表数据
MySQL复制表结构 表数据 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete ...
- mysql复制表数据或表结构到新表中
MySQL复制表数据到新表的几个步骤. 1.MySQL复制表结构及数据到新表 CREATE TABLE new_table SELECT * FROM old_table; 2.只复制表结构到新表 C ...
- Mysql 复制表结构 及其表的内容
顺便转一下Mysql复制表结构.表数据的方法: 1.复制表结构及数据到新表CREATE TABLE 新表 SELECT * FROM 旧表 这种方法会将oldtable中所有的内容都拷贝过来,当然我们 ...
- mysql复制表结构create table as和like的区别
对于MySQL的复制相同表结构方法,有create table as 和create table like 两种,区别是什么呢? create table t2 as select * from t1 ...
随机推荐
- 记录使用vs code两天的心得
一个字 就是骚~感觉以后写博客都省了
- ACboy needs your help (动态规划背包)
ACboy has N courses this term, and he plans to spend at most M days on study.Of course,the profit he ...
- JVM—01
目录 1.1 JVM系统架构图 2.1 类加载器 2.1.1 双亲委派机制 2.1.2 沙箱安全机制 3.1 Native 4.1 PC寄存器 1.1 JVM系统架构图 JVM是什么? JVM是Jav ...
- Java使用POI的SXSSFWorkbook与HSSFWorkbook导出复杂表头
一.HSSFWorkbook与SXSSFWorkbook的区别: HSSFWorkbook是对Excel2003以前的版本进行操作的,即后缀名为.xls SXSSFWorkbook时对Excel200 ...
- 记录一个基于Java的利用快排切分来实现快排TopK问题的代码模板
使用快排切分实现快排和TopK问题的解题模板 import java.util.Arrays; public class TestDemo { public static void main(Stri ...
- 2020年 .NET ORM 完整比较、助力选择
.NET ORM 前言 为什么要写这篇文章? 希望针对 SEO 优化搜索引擎,让更多中国人知道并且使用.目前百度搜索 .NET ORM 全是 sqlsugar,我个人是无语的,每每一个人进群第一件事就 ...
- pytest测试框架 -- setup和teardown等
一.用例运行级别 1.函数级别(setup.teardown 或 setup_function.teardown_function): 仅对处于同作用域的测试函数有效(该函数定义不在类中,则对非类中测 ...
- case实现shell菜单功能
#!/bin/sh#Shell菜单演示function menu (){ cat << EOF----------------------------------------|****** ...
- 你想了解的分布式文件系统HDFS,看这一篇就够了
1.分布式文件系统 计算机集群结构 分布式文件系统把文件分布存储到多个节点(计算机)上,成千上万的计算机节点构成计算机集群. 分布式文件系统使用的计算机集群,其配置都是由普通硬件构成的,与用多个处理器 ...
- 整理的网上的MySQL优化文章总结
MySQL优化 Linux优化 IO优化 调整Linux默认的IO调度算法. IO调度器的总体目标是希望让磁头能够总是往一个方向移动,移动到底了再往反方向走,这恰恰就是现实生活中的电梯模型,所以IO调 ...