1010cc时时彩标准版 > 1010cc三分网站 > 表数据的方法,mysql复制表以及复制数据库

原标题:表数据的方法,mysql复制表以及复制数据库

浏览次数:190 时间:2019-09-30

(一)将旧表复制到新表

正文给大家大饱眼福了几许种复制表结构、表数据的身体力行介绍,具体实际情况请看下文吧。

CREATE TABLE EMP1 AS SELECT * FROM EMP WHERE EMPNO=1

1、操作某数据库 use 数据库名称,然后能够操作该数据库下的某张表

0、复制表结构及数据到新表
CREATE TABLE 新表 SELECT * FROM 旧表
这种方法会将oldtable中保有的原委都拷贝过来,当然大家能够用delete from newtable;来删除。
唯独这种艺术的多个最不好的地点就是新表中绝非了旧表的primary key、Extra(auto_increment)等属性。供给本人用"alter"增加,并且便于搞错。

1、CREATE TABLE新表 SELECT* FROM旧表;

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

SELECT * INTO NEW_TABLE FROM EMP WHERE EMPNO=1   (IF NEW_TABLE IS EXIST ) 

2、$res=mysql_query($sql); 该语句借使用在包装的函数体里,
则毫不传入第贰个参数$conn来钦命连接,那样才具选取到该函数体外面已开辟的接连;
mysql_query() 向与钦点的连天标志符关联的服务器中的当前活动
数据库发送一条查询。若无一点点名 link_identifier,则利用上一
个展开的连日。若无打开的连年,本函数会尝试无参数调用
mysql_connect() 函数来树立四个连接并应用之。查询结果会被缓存。

 

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

CREATE TABLE 新表SELECT * FROM 旧表

 

3,数据库查询
清空数据表,并让自增的id从1开端 truncate table sharon

 

 

这种方法会将oldtable中装有的原委都拷贝过来,当然大家得以用delete from newtable;来删除。

1.create database name; //创立数据库 (create 内部命令)

求差集
SELECT hotelcode FROM 0hotelone WHERE hotelno =1 AND hotelcode NOT
IN (SELECT hotelcode FROM 0hotel_freedom WHERE hno =1);
差相当少询问
SELECT * FROM `0hotelone` WHERE hotelno=1 and hotelcode=3702;
分组查询
SELECT hotelcode , hno FROM `0hotel_freedom` WHERE hno=37 group by hotelcode;
数据库操作语句
翻开当前存在的数据库show databases;
开创数据库create database 数据库名称;
翻看数据库的创始语句:show create database 数据库名称(已创建的);
除去数据库Drop database 数据库名称;
修改数据库新闻Alter database 数据库名称 修改命令;
修改数据库名称:轻巧的能够一贯修改目录名;
将数据库内容全方位导出,新建一个数据库将数据导入,删除旧数据库;
创造四个新数据库,将就数据库内的表,都活动(重命名)到新数据库内,删除旧数据库。


  1. CREATE TABLE if not exists new_table

  2. SELECT col1, col2, col3

  3. FROM

  4. existing_table

  5. WHERE

  6. conditions;

但是这种方法的一个最倒霉的地点正是新表中尚无了旧表的primary key、Extra(auto_increment)等品质。须求本身用"alter"增加,并且轻松搞错。

  mysql>create  database  ;

制造表(成立前先采用数据库)
Create table tbl_name [列结构][表选项]
先剖析必要保留的实业数据具备怎么着属性,那些属性应该怎么保存。

 

2、MySQL 数据库不扶助 SELECT ... INTO 语句,但扶助 INSERT INTO ... SELECT 

2、只复制表结构到新表

2.use databasename; //接纳数据库 (use内部命令)

MyISAM与InnoDB是mysql这段日子比较常用的三个数据仓库储存款和储蓄引擎,MyISAM与InnoDB的第一的不相同点在于品质和专业调节上。
MyISAM:MyISAM是MySQL5.5在此以前版本暗许的数据仓库储存款和储蓄引擎。MYISAM提供高速存款和储蓄和搜索,以及全文字笔迹核查索本事,符合数据客栈等查询频仍的施用。但不接济专门的学业、也不帮助外键。MyISAM格式的几位命关天破绽正是不可能在表损坏后苏醒数据。
InnoDB:InnoDB是MySQL5.5本子的暗中认可数据库存款和储蓄引擎,可是InnoDB已被Oracle收购,MySQL自行开垦的新存款和储蓄引擎Falcon就要MySQL6.0本子引入。InnoDB具有提交、回滚和崩溃苏醒技巧的政工业安全全。但是比起MyISAM存款和储蓄引擎,InnoDB写的管理功能差了一点相同的时候会据有越来越多的磁盘空间以保存数据和目录。纵然如此,可是InnoDB包蕴了对事务处理和外来键的匡助,这两点都以MyISAM引擎所未有的。
MyISAM符合:(1)做过多count 的估摸;(2)插入不频仍,查询极其频仍;(3)未有事情。
InnoDB相符:(1)可信性须求相比较高,或许需求作业;(2)表更新和查询都非凡的累累,并且表锁定的火候相当大的气象。(4)品质较好的服务器,比方单独的数据库服务器,像Ali云的关系型数据库QashqaiDS就引入应用InnoDB引擎。

 

里头在利用select  into 语句与insert into select 语句时,新表要提前创立,而且新表与旧表的字段属性要一直以来才方可。

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

  mysql>use  ;

查询wpsql库
mysql> use wpsql;

 

create table 新表 like 旧表;

或CREATE TABLE 新表LIKE 旧表

3.drop database name; //直接删除数据库,不升迁 (drop内部命令)

列出当下库全部表名
mysql> show tables;
将wp_posts表修为InnoDB存款和储蓄引擎(也得以此命令将InnoDB换为MyISAM):
mysql> ALTER TABLE wp_posts ENGINE=INNODB;

1、只复制表结构到新表
CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2
或CREATE TABLE 新表  LIKE 旧表

新表创立之后才得以应用上边包车型的士三个语句:

3、复制旧表的数目到新表(要是多个表结构同样)

  mysql>drop  database  ;

 

create table score_youxiu select * from score where grade >90;

SELECT * INTO 新表   FROM  旧表;

INSERT INTO 新表SELECT * FROM 旧表

4.drop table name; // 直接删除表

六、修改,删除主键
修改从前先删除自增auto increment;
除去主键 alter table table_name drop primary key;
注:在增加主键以前,必须先把一再的id删除掉。
修改主键 alter table table_test add primary key(id);

//复制表的局地剧情

INSERT INTO  新表  SELECT * FROM  旧表;

4、复制旧表的多寡到新表(假诺三个表结构不均等)

  mysql>drop  table  ;

若以上不恐怕成功,重新创设一张新表,把旧表的中你需求的数额插入新表

create table score_youxiu select * from score where id%4=0;

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

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

5.create table name; //创建表

七、把那张表中的数码插入到另一张表中
INSERT INTO `planpoint`.`0hotelone_img0` (no,hotelno,hotelcode,big,small,tag)
SELECT no,hotelno,hotelcode,big,small,tag
FROM `planpoint`.`0hotelone_img` order by no;

//应用:分表办法(按专门的学业供给,取模(id%4),取偏移量)

INSERT INTO  新表  (column_name(s))  SELECT   column_name(s)  FROM  旧表;

5、能够将表1结构复制到表2

  mysql>create  table  ;

八、导入数据库表 (在cmd中程导弹入)
如已有数据库则制造数据库(1)(2)可总结
   (1)创建.sql文件
   (2)首发生二个库如auction.c:mysqlbin>mysqladmin -u root -p creat planpoint 会提醒输入密码,然后成功创建。
   (2)导入auction.sql文件
   c:mysqlbin>mysql -u root -p planpoint < auction.sql
   通过以上操作,就能够创建了二个数据库planpoint以及中间的一个表auction

 

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

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

      **前提是先mysql>use;

②、导出数据中的表结构和多少(cmd中程导弹出)
1.导出成套数据库
   mysqldump -u客户名 -p密码 数据库名 > 导出的公文名
   C:Usersjack> mysqldump -uroot -pmysql sva_rec > e:sva_rec.sql


 

6、能够将表1剧情总体复制到表2

6.show databases;//彰显全体数据库

   2.导出四个表,包罗表结商谈数目
   mysqldump -u客户名 -p密码 数据库名 表名> 导出的文本名
   C:Usersjack> mysqldump -uroot -pmysql sva_rec date_rec_drv> e:date_rec_drv.sql

 

(二)复制一样表结构

SELECT * INTO 表2 FROM 表1

  mysql>show  databases;

   3.导出八个数据库结构
   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec > e:sva_rec.sql

 

 

7、 show create table 旧表;

7.show tables; //展现数据库中的表 (show内部命令)

  4.导出一个表,唯有表结构
   mysqldump -u用户名 -p 密码 -d数据库名 表名> 导出的文本名
   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec date_rec_drv> e:date_rec_drv.sql

 

对于mysql的复制同样表结构格局,有create table as 和create table like 二种

诸有此类会将旧表的创始命令列出。大家只须求将该命令拷贝出来,改动table的名字,就足以创制叁个一模二样的表

  mysql>show  tables;

 

2、复制旧表的多少到新表(假使三个表结构同样)
INSERT INTO 新表 SELECT * FROM 旧表

create table 新表 like 旧表;

8、mysqldump

      **提早是先mysql>use;

 

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

用mysqldump将表dump出来,改名字后再导回去大概直接在指令行中运转

8.describe tablename; //展现表的详细描述

 

互相的差距:

9、复制旧数据库到新数据库(复制全体表结构何况复制全体表数据)

  mysql>describe ;


 

#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

9.select version(),current_date; //展现当前mysql版本和目今日子

 

as用来创制同样表结构并复制源表数据

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 (前五条纪录)以上内容正是本文的百分之百陈诉,希望大家爱怜。

  mysql>select  version(), current_date;

 

like用来创立完整表结商谈任何目录

你大概感兴趣的篇章:

  • MYSQL METADATA LOCK(MDL LOCK)MDL锁难点浅析
  • mysql中复制表结构的点子小结
  • MySQL复制表结构和内容到另一张表中的SQL语句
  • MySQL修改表结构操作命令计算
  • Navicat for MySQL导出表结构脚本的简练方法
  • MySQL优化之表结构优化的5大提议(数据类型选择讲的很好)
  • mysql修改表结构情势实例详解
  • MySQL中期维修改表结构时索要在意的一对地方
  • MySQL数据源表结构图示
  • MySQL表结构改换你不可不知的Metadata Lock详解

  mysql>select  version(),

3、复制旧表的数目到新表(假如七个表结构不平等)
INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表

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

      ->current_date;

insert into ss (id,stu_id) select id,stu_id from score;

(三)MySQL复制表到另多个数据库

  **select 内部命令 

insert into score3 (id,stu_id,c_name) select id,stu_id,c_name from score;

访谈分歧数据库中的表:数据库名.表名 ,选用点 的格局。

10.mysql>flush privileges ; //刷新数据库

 

神蹟,您要将表复制到别的数据库。 在这种气象下,可利用以下语句:

11.mysql兑现修改客商密码:


  1. CREATE TABLE destination_db.new_table

  2. LIKE source_db.existing_table;

  3.  

  4. INSERT destination_db.new_table

  5. SELECT *

  6. FROM source_db.existing_table;

 11.1 update //修改

 

SQL

       shell>mysql -u root -p

 

切实流程:

     mysql> update mysql.user set password=PASSWORD(’新密码’) where User='root';

4、能够将表1构造复制到表2
SELECT * INTO 表2 FROM 表1 WHERE 1=2

  1. CREATE DATABASE IF NOT EXISTS testdb;

     mysql> flush privileges;

 

SQL

     mysql> quit


说不上,通过将其协会从示例数据库(yiibaidb)中的offices表复制出来,在testdb中成立了offices表。

 11.2 mysqladmin//修改客商密码

 

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

     shell>mysqladmin -u root password new_password

 

SQL

 11.3 本身测量试验未经过

5、能够将表1内容总体复制到表2
SELECT * INTO 表2 FROM 表1

其三,我们将数据从yiibaidb.offices表复制到testdb.offices表中。

     shell>mysql -u root -p

 

  1. INSERT testdb.offices

  2. SELECT *

  3. FROM yiibaidb.offices;

    mysql>SET PASSWORD FOR root=PASSWORD("root");


 

12.创办帐号

 

(四)MySQL数据库导入导出

  mysql> grant all(delete,updatae,create,drop,insert) privileges on *.* to @localhost identified  by  ;

 

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;

13.重命名表:

6、show create table 旧表;
与此相类似会将旧表的创建命令列出。大家只要求将该命令拷贝出来,更动table的名字,就能够制造一个截然一致的表

 

  mysql > alter table   rename  ; //把表t1重命名称叫t2

 

14.备份数据库


 14.1 导出任何数据库

 

          mysqldump -u 客户名 -p 数据库名 > 导出的文书名

 

        mysqldump -u root -p asb >d:asb.sql

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

 

 

 14.2 导出一个表


本文由1010cc时时彩标准版发布于1010cc三分网站,转载请注明出处:表数据的方法,mysql复制表以及复制数据库

关键词:

上一篇:SQLServer导数据到Oracle,BCP导出导入大容量数据实

下一篇:没有了