您的位置:澳门皇冠金沙网站 > 办公软件 > mysql复制表以及复制数据库澳门皇冠金沙网站

mysql复制表以及复制数据库澳门皇冠金沙网站

2019-11-21 21:12

新表建立之后才可以使用下面的两个语句:

6、可以将表1内容全部复制到表2

 

本文给大家分享了好几种复制表结构、表数据的示例介绍,具体详情请看下文吧。

SQL

这样会将旧表的创建命令列出。我们只需要将该命令拷贝出来,更改table的名字,就可以建立一个完全一样的表

具体流程:

不过这种方法的一个最不好的地方就是新表中没有了旧表的primary key、Extra(auto_increment)等属性。需要自己用"alter"添加,而且容易搞错。

create table 新表 like 旧表;

或CREATE TABLE 新表LIKE 旧表

实例:INSERT INTO Websites (name, country) SELECT app_name, country FROM apps;

1、复制表结构及数据到新表

二者的区别:

INSERT INTO 新表SELECT * FROM 旧表

2、MySQL 数据库不支持 SELECT ... INTO 语句,但支持 INSERT INTO ... SELECT 

SELECT * INTO 表2 FROM 表1

该语句只是复制表结构以及数据,它不会复制与表关联的其他数据库对象,如索引主键约束外键约束触发器等。

用mysqldump将表dump出来,改名字后再导回去或者直接在命令行中运行

SELECT * INTO 新表   FROM  旧表;

#mysql -u root -ppassword
>CREATE DATABASE new_db;
#mysqldump old_db -u root -ppassword--skip-extended-insert --add-drop-table | mysql new_db -u root -ppassword

oracle支持as,也是只有表结构没有索引
oracle不支持like。

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

只复制希望的列插入到另一个已存在的表中:

10、表不在同一数据库中(如,db1 table1, db2 table2)
sql: insert into db1.table1 select * from db2.table2 (完全复制)
insert into db1.table1 select distinct * from db2.table2(不复制重复纪录)
insert into tdb1.able1 select top 5 * from db2.table2 (前五条纪录)以上内容就是本文的全部叙述,希望大家喜欢。

create table 新表 as select * from 旧表 limit 0;

CREATE TABLE 新表SELECT * FROM 旧表WHERE 1=2

SQL

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

(二)复制相同表结构

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

 

5、可以将表1结构复制到表2

1、使用mysqldump工具将数据库导出并转储到sql文件:mysqldump -u 用户名 -p 数据库名 > 导出的文件名  mysqldump -h IP -u 用户名 -p 数据库名 > 导出的文件名

2 :(导出某张表的表结构不含数据)
mysqldump -h localhost -u root -p -d test pollution > G:arcgisworkspacezypdoctest.sql
3:(导出某张表的表结构和数据,不加-d)
mysqldump -h 127.0.0.1 -u root -p test pollution > G:arcgisworkspacezypdoctest.sql
mysqldump-u root -p yiibaidb >d:database_bakyiibaidb.sql
其中>表示导出。
澳门皇冠金沙网站,2、导入sql文件
在MySQL中新建数据库,这时是空数据库,如新建一个名为news的目标数据库
create database if not exists news;
use news;
导入文件:
source 路径+导入的文件名; 
source d:mysql.sql;

 

要复制一个MySQL数据库,您需要执行以下步骤:

  • 首先,使用CREATE DATABASE语句创建一个新的数据库。
  • 其次,使用mysqldump工具导出要复制的数据库的所有数据库对象和数据。
  • 第三,将SQL转储文件导入新的数据库。

作为一个演示,假设要把yiibaidb数据库复制到yiibaidb_backup数据库:

步骤1, 创建yiibaidb_backup数据库:

首先,登录到MySQL数据库服务器:

C:UsersAdministrator> mysql -u root -p
Enter password: **********

Shell

然后,使用CREATE DATABASE语句如下:

  1. CREATE DATABASE yiibaidb_backup;

SQL

第三,使用SHOW DATABASES命令验证:

  1. SHOW DATABASES

SQL

 

步骤2

 

使用mysqldump工具将数据库对象和数据转储到SQL文件中。

假设要将数据库对象和数据库转储到位于D:database_bak文件夹的SQL文件中,这里是以下命令:

  1. C:UsersAdministrator> mysqldump -u root -p yiibaidb > d:database_bakyiibaidb.sql

  2. Enter password: **********

SQL

基本上,此命令指示mysqldump使用具有密码的root用户帐户登录到MySQL服务器,并将数据库对象和yiibaidb数据库的数据导出到d:database_bakyiibaidb.sql。 请注意,运算符(>)表示导出。

步骤2

d:database_bakyiibaidb.sql文件导入到yiibaidb_backup数据库。

C:UsersAdministrator> mysql -u root -p yiibaidb_backup < d:database_bakyiibaidb.sql
Enter password: **********

Shell

请注意,运算符(<)表示导入。

要验证导入,可以使用SHOW TABLES命令快速检查。

mysql> SHOW TABLES FROM yiibaidb_backup;

这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable;来删除。

like用来创建完整表结构和全部索引

9、复制旧数据库到新数据库(复制全部表结构并且复制全部表数据)

  1. CREATE TABLE testdb.offices LIKE yiibaidb.offices;

您可能感兴趣的文章:

(一)将旧表复制到新表

SELECT * INTO 表2 FROM 表1 WHERE 1=2

 

2、只复制表结构到新表

本文由澳门皇冠金沙网站发布于办公软件,转载请注明出处:mysql复制表以及复制数据库澳门皇冠金沙网站

关键词: