MySQL复制表与表数据到新表的方法

在 MySQL 中拷贝表,将 old_table 表拷贝为 new_table 表。

1. 不拷贝表数据,只拷贝结构。

 代码如下 复制代码
CREATE TABLE new_table LIKE old_table2

. 通过 SELECT 查询来拷贝,new_table 表会丢失主键、索引等信息。

引用

 代码如下 复制代码

CREATE TABLE new_table AS
(
    SELECT *
    FROM old_table
)

3. 完全拷贝表

 代码如下 复制代码

CREATE TABLE new_table LIKE old_table;
INSERT INTO new_table SELECT * FROM old_table;

4. 仅拷贝字段

 代码如下 复制代码

CREATE TABLE new_table AS
(
    SELECT field1, field2 FROM old_table
)

5. 部分拷贝

 代码如下 复制代码

CREATE TABLE new_table AS
(
    SELECT * FROM old_table WHERE field1 = 'mangguo'
)

数据复制

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

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

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

INSERT INTO 新表SELECT * FROM 旧表

CREATE TABLE 新表

SELECT * FROM 旧表 WHERE 1=2  即:让WHERE条件不成立

时间: 2024-07-30 18:27:40

MySQL复制表与表数据到新表的方法的相关文章

MySQL中复制数据表中的数据到新表中的操作教程_Mysql

MySQL是不支持SELECT - INTO语法的,使用INSERT INTO - SELECT替代相同用法,下面我们我们这里简答分一下新表存在和不存在两种情况,具体使用不同的语句.1.新表不存在复制表结构即数据到新表 create table new_table select * from old_talbe; 这种方法会将old_table中所有的内容都拷贝过来,用这种方法需要注意,new_table中没有了old_table中的primary key,Extra,auto_incremen

看实例学VFP:利用多个表中的字段创建新表

本例中再来复习一下select语句中的inner join子句的知识,关于select语句请参考:select SQL 命令 或sql语言教程.本例的主要操作是在表单的init事件中完成的,在该事件中进行连接查询并将查询结果输出为一个临时表(该表包括了"人员信息表"的"姓名,性别,基本工资"3个字段以及"工资表"的"奖金,生活补助,养老保险"3个字段),最后将该表设为表格控件的数据源.本例应用到了数据环境,并使用"数

反射-java代码实现生成一套表中的数据,包括表的关联关系

问题描述 java代码实现生成一套表中的数据,包括表的关联关系 在a表中生成一套a表中的数据,只是一个字段值不一样而已,并且还要生成表的关系关系 相当于在原来表关系的基础上在生成一套新的数据.

name-有两个表,字段的个数不同,想取出a表的所有数据和b表的数据不等于a表的。

问题描述 有两个表,字段的个数不同,想取出a表的所有数据和b表的数据不等于a表的. 想取出a表的所有name 的数据和b表的name不等于a表name的数据 例如: a表有字段 name b表也有字段 name a表有name:张三 王五 b表有name:李四 张三 a,b两个表的字段个数不同. 最后取出的是:张三,李四,王五. 解决方案 select a.name from a union select b.name from b 解决方案二: select a.name from a --取

C#使用SqlBulkCopy将DataTable写入数据库的表中(表不存在则创建新表,数据存在则更新,不存在则插入)

原文:.net使用SqlBulkCopy导入数据(创建新表) .net2.0后ado.net提供了一个快速导入sqlserver的方法sqlbulkcopy.导入效率非常高.  包装了一个简单的sqlbulkcopy类,用于数据从datatable导入到sqlserver.代码如下:   /// <summary> /// 将DataTable写入数据库的表中 /// </summary> /// <param name="source">数据源Da

mysql 导出 xls 与csv 数据实现与乱码解决方法

mysql教程 导出 xls 与csv 数据实现与乱码解决方法 下面关于 先来看mysql 导出导入 xls 与csv数据实例方法,同时在碰到导入乱码时的有效解决方法, 在mysql命令行下执行以下sql语句: mysql>select * from xi_table into outfile 'd:www.111cn.nettest.xls'; 有时候有excel打开的时候会出现乱码, 因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,可以在服务器端使用icon

要求从表A查数据插入到表B中,并且要求如果表A中已存在的数据,就不要重复插入

  insert into A select * from B where not exists (select 1 from A where A.ID=B.ID)   insert when (not exists (select 1 from 表名 where 检验重复的条件)) then into 表名 values(相应的值)select 1 from dual

mysql使用SQLyog导入csv数据不成功的解决方法_Mysql

今天给mysql导入数据,使用的软件是SQLyog,相信直接导大家也都会,选中某个表选择导入--导入使用本地csv数据即可,单有的时候不知道什么问题导入不成功,可以使用命令,以此记录,以后用到便于查: (我的是windows系统) LOAD DATA LOCAL INFILE 'C:\\Users\\zl\\Desktop\\zhishu.csv' INTO TABLE 库名.表名 CHARACTER SET gbk FIELDS TERMINATED BY ',' OPTIONALLY ENC

MySQL复制表结构 表数据sql语句总结

复制整个表  代码如下 复制代码 create table new_table select * from old_table; 复制表,不复制数据  代码如下 复制代码 create table new_table select * from old_table where 0; 主键,索引,自增等其他额外特征不会被带到新表中.这点和其他的数据库产品类似. 上面为核心两句了 1.MySQL复制表结构及数据到新表  代码如下 复制代码 CREATE TABLE `新表` SELECT * FRO