mysql跨数据库复制表(在同一IP地址中)示例

时间:2024-01-20 00:51:11 

数据库表间数据复制分类

在利用数据库开发时,常常会将一些表之间的数据互相导入。当然可以编写程序实现,但是,程序常常需要开发环境,不方便。最方便是利用sql语言直接导入。既方便而修改也简单。以下就是导入的方法。

1、 表结构相同的表,且在同一数据库(如,table1,table2)

Sql :


insert into table1 select   *    from table2 (完全复制)
insert into table1 select   distinct   *   from table2(不复制重复纪录)
insert into table1 select   top 5 *   from   table2 (前五条纪录)

2、不在同一数据库中(如,db1 table1,db2 table2)

sql:       
[code]
insert into db1.table1 select   *    from db2.table2 (完全复制)
insert into db1.table1 select   distinct   *   from db2table2(不复制重复纪录)
insert into tdb1.able1 select   top 5 *   from   db2table2 (前五条纪录)

3、表结构不同的表或复制部分纪录(如,dn_user,dn_user2)

a.  建一个新表[DN_UserTemp](在老表dn_user上增加一列)


CREATE TABLE [DN_UserTemp] ( [Num] [numeric](18, 0) IDENTITY (1, 1) NOT NULL)
[Id] [idtype] NOT NULL ,
[Name] [fntype] NOT NULL ,
[Descript] [dstype] NULL ,
[LogonNm] [idtype] NOT NULL ,
[Password] [idtype] NULL ,
[Gender] [char] (1) NULL ,
[Quited] [booltype] NOT NULL,
[OffDuty] [booltype] NOT NULL ,
[Stopped] [booltype] NOT NULL,
[OSBind] [booltype] NOT NULL,
[Domain] [idtype] NULL ,
[EMail] [fntype] NULL ,
[UnitId] [idtype] NULL ,
[BranchId] [idtype] NULL ,
[DutyId] [idtype] NULL ,
[LevelId] [idtype] NULL ,
[ClassId] [idtype] NULL ,
[TypeId] [idtype] NULL ,
[IP] [varchar] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[ExpireDT] [datetime] NULL ,
[Sort] [int] NOT NULL ,
[AllowDel] [booltype] NOT NULL,
[UnitChief] [booltype] NOT NULL,
[BranchChief] [booltype] NOT NULL ,
[UnitDeputy] [booltype] NOT NULL ,
[BranchDeputy] [booltype] NOT NULL ,

[Num] [numeric](18, 0) IDENTITY (1, 1) NOT NULL

) ON [PRIMARY]

b. 将dn_uer2的数据拷入dn_usertemp

sql:insert into dn_usertemp select * from dn_user2

c.将dn_usertemp 拷入dn_user

sql:


declare   @i int
declare   @j int
declare   @Name fntype
set @i=1
select @j=count(*) from dn_usertemp
while @i<@j 1
begin

select @Name=Name from dn_usertemp where Num=@i
print @Name
insert into dn_user (Name) values (@Name) where Num=@i
select @i=@i 1
end


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在当前操作的数据库。

另外:在mysql数据库中复制数据为:


select * into desTable from sourceTable在mssql中支持,在mysql中不支持
insert into desTable select * from sourceTable

标签:mysql,数据库,复制
0
投稿

猜你喜欢

  • 用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)

    2024-04-30 08:55:07
  • python使用新浪微博api上传图片到微博示例

    2021-10-13 02:15:06
  • mysql安装图解 mysql图文安装教程(详细说明)

    2024-01-28 08:37:50
  • 最新整理Python中的type和object的示例详解

    2023-08-10 05:21:44
  • python实现批量修改文件名

    2022-03-10 18:44:54
  • 深入讲解SQL中的字符串拼接

    2024-01-23 17:52:00
  • Jmeter调用Python脚本实现参数互相传递的实现

    2023-10-27 23:45:01
  • Golang在Mac、Linux、Windows下如何交叉编译的实现

    2024-02-23 06:00:02
  • python自动发送邮件脚本

    2023-01-24 07:56:28
  • Pytest中conftest.py的用法

    2022-08-05 03:48:32
  • python密码学RSA算法及秘钥创建教程

    2022-03-20 04:02:34
  • 浅谈vue websocket nodeJS 进行实时通信踩到的坑

    2024-04-10 13:46:38
  • 用户体验之网页板块设计

    2011-05-14 16:41:00
  • Vue实现登录以及登出详解

    2023-07-02 16:59:51
  • 都2019年了,还问http中GET和POST的区别

    2023-03-26 10:24:17
  • MySQL中SQL Mode的查看与设置详解

    2024-01-26 12:14:08
  • 教你用Python实现简易版学生信息管理系统(含源码)

    2022-07-21 23:40:00
  • 在页面中输出当前客户端时间javascript实例代码

    2024-02-25 23:07:56
  • MySQL5.7不停业务将传统复制变更为GTID复制的实例

    2024-01-26 08:30:25
  • 详解用python写一个抽奖程序

    2023-07-06 10:28:12
  • asp之家 网络编程 m.aspxhome.com