不同服务器数据库之间的数据操作

--创建链接服务器

exec sp_addlinkedserver ‘ITSV ‘, ‘ ‘, ‘SQLOLEDB ‘, ‘远程服务器名或ip地址 ‘
exec sp_addlinkedsrvlogin ‘ITSV ‘, ‘false ‘,null, ‘用户名 ‘, ‘密码 ‘

--查询示例
select * from ITSV.数据库名.dbo.表名

--导入示例
select * into 表 from ITSV.数据库名.dbo.表名

--以后不再使用时删除链接服务器
exec sp_dropserver ‘ITSV ‘, ‘droplogins ‘

--连接远程/局域网数据(openrowset/openquery/opendatasource)
--1、openrowset

--查询示例
select * from openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)

--生成本地表
select * into 表 from openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)

--把本地表导入远程表
insert openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)
select *from 本地表

--更新本地表
update b
set b.列A=a.列A
from openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)as a inner join 本地表 b
on a.column1=b.column1

--openquery用法需要创建一个连接

--首先创建一个连接创建链接服务器
exec sp_addlinkedserver ‘ITSV ‘, ‘ ‘, ‘SQLOLEDB ‘, ‘远程服务器名或ip地址 ‘
--查询
select *
FROM openquery(ITSV, ‘SELECT * FROM 数据库.dbo.表名 ‘)
--把本地表导入远程表
insert openquery(ITSV, ‘SELECT * FROM 数据库.dbo.表名 ‘)
select * from 本地表
--更新本地表
update b
set b.列B=a.列B
FROM openquery(ITSV, ‘SELECT * FROM 数据库.dbo.表名 ‘) as a
inner join 本地表 b on a.列A=b.列A

--3、opendatasource/openrowset
SELECT *
FROM opendatasource( ‘SQLOLEDB ‘, ‘Data Source=ip/ServerName;User ID=登陆名;Password=密码 ‘ ).test.dbo.roy_ta
--把本地表导入远程表
insert opendatasource( ‘SQLOLEDB ‘, ‘Data Source=ip/ServerName;User ID=登陆名;Password=密码 ‘).数据库.dbo.表名
select * from

http://www.cnblogs.com/shineqiujuan/archive/2009/04/20/1439615.html

https://technet.microsoft.com/zh-cn/library/ms162773.aspx

时间: 2024-10-14 20:42:13

不同服务器数据库之间的数据操作的相关文章

SQL不同服务器数据库之间的数据操作整理(完整版)

---------------------------------------------------------------------------------- -- Author : htl258(Tony) -- Date : 2010-06-25 22:23:18 -- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86) -- Jul 9 2008 14:43:34 -- Copyright (c) 1

SQLServer服务器数据库之间的数据操作(完整版)

分类: 数据库开发技术 ---------------------------------------------------------------------------------- -- Author : htl258(Tony) -- Date : 2010-06-25 22:23:18 -- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86) -- Jul 9 2008 14:43:34 -- Cop

SQL不同服务器数据库之间的数据操作整理(完整版)(转)

---------------------------------------------------------------------------------- -- Author : htl258(Tony) -- Date   : 2010-06-25 22:23:18 -- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86) --          Jul  9 2008 14:43:34 --    

[转载]不同服务器数据库之间的数据操作--复制同步(整理版)

备份还原: A服务器为主服务器,客户端更新都更新在A服务器上: B服务器为次服务器,B定时与A保持一致,结果B机时A的一个拷贝/备份,只是时间上有一个差. 实现方法:A定时备份;B定时以A的备份进行还原 具体方法如下:(MS-SQL中) 打开A服务器企业管理器,找到管理-SQL Server代理-作业,创建一个新作业,名字可以起备份,作业中创建一个步骤: SQL code BACKUP DATABASE [TEST] TO DISK = 'F:/SQL_SERVER/TEST/DB.BACKUP

阿里云RDS实例内不同数据库之间的数据迁移

适用场景 本文适用于使用DTS实现相同实例下库名不同的数据库之间的数据迁移.本文以使用DTS将同一RDS实例下的amptest库迁移到jiangliu_amptest库为例来说明如何使用DTS实现相同实例下库名不同的数据库之间的数据迁移. 说明:当源和目标实例类型不为RDS时,配置流程相同. 环境准备 创建RDS账号,不同的数据库类型,要求的迁移账号权限不同,具体权限要求可以参考产品手册-数据迁移中的相关文档. 在同一RDS实例下创建好amptest数据库以及jiangliu_amptest数据

Java使用jdbc连接Sqlite数据库进行各种数据操作的详细过程

前言:      SQLite是遵守ACID 的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.       不像常见的客户-服务器范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分.所以主要的通信协议是在编程语言内的直接API调用.这在消耗总量.延迟时间和整体简单性上有积极的作用.整个数据库(定义.表.索引和数据本身)都在宿主主机上存储在一个单一的文件中.它的简单的设计是通过在开始一个事务的时候锁定整个数

数据库 MySQL 之 数据操作

一.MySQL数据类型介绍 MySQL支持多种类型,大致可以分为四类:数值.字符串类型.日期/时间和其他类型. ①二进制类型 bit[(M)] 二进制位(101001),m表示二进制位的长度(1-64),默认m=1 ②整数类型:存储年龄,等级,id,各种号码等 tinyint[(m)] [unsigned] [zerofill] 小整数,数据类型用于保存一些范围的整数数值范围: 有符号:-128 - 127. 无符号:255 特别的: MySQL中无布尔值,使用tinyint(1)构造. int

C#实现两个数据库之间的数据上报

用VS2008实现本地数据库上传数据到远程数据,数据可以是一个表,或一个表的部分数据,或查询数据,或数据编辑后上传. 其它VS版本,复制其中代码就可以,未使用其它任何插件,有详细注释. 单独页面实现,已经上传过的数据不能再上传,防治冲突. 文中的"表 _Sent"为需要上传时的数据备份表或修改后数据的表格,同时用以判断源数据是否上传. 源代码下载 版权声明:本文为博主原创文章,未经博主允许不得转载.

两个服务器不同的数据库之间的数据导入。

手贱,一不小心delete掉了数据库中的整张表.-.-!!!!当时那个惆怅啊. 最后终于找到了这个方法: 1.先进入你删除掉表的数据库, 写如下语句: sp_addlinkedserver 'xx.xx.xx.xx' --要导入的数据库的ip地址: exec sp_addlinkedsrvlogin  'xx.xx.xx.xx', 'false ',null, '用户名', '密码' INSERT INTO 表名 (字段1,字段2,字段3) SELECT 字段1,字段2,字段3 FROM [xx