--查看当前链接情况: select * from sys.servers; --增加链接,参数:服务器别名,为链接服务器的OLE DB数据源的产品名称,与此数据源对应的OLE DB访问接口的唯一编程标识符(PROGID),由OLE DB访问接口解释的数据源的名称 --这种设置链接服务器的方式强制链接服务器的名称与 SQL Server 远程实例的网络名称相同,也就是计算机名称参考:https://msdn.microsoft.com/zh-cn/library/ms190479.aspx EX…
--判断是否开启远程操作服务,如果关闭,则开启,用完之后关闭 DECLARE @value SQL_VARIANT SELECT @value=VALUE from sys.configurations WHERE NAME='show advanced options' )) BEGIN RECONFIGURE END SELECT @value=VALUE from sys.configurations WHERE NAME='Ad Hoc Distributed Queries' )) B…
若2个数据库在同一台机器上:insert into DataBase_A..Table1(col1,col2,col3----)select col11,col22,col33-- from DataBase_B..Table11若不在同一台机器上,则是本文要讲的内容: ----------------------------------------------------------------------------------------- 跨服务器查询sql语句样例 INSERT INT…
若2个数据库在同一台机器上: insert into DataBase_A..Table1(col1,col2,col3----) select col11,col22,col33-- from DataBase_B..Table11 若不在同一台机器上,则是本文要讲的内容: ----------------------------------------------------------------------------------------- 跨服务器查询sql语句样例 INSERT…
1.启用Ad Hoc Distributed Queries:exec sp_configure 'show advanced options',1reconfigureexec sp_configure 'Ad Hoc Distributed Queries',1reconfigure 2.sql语句insert into  datatable(id)select top 100 id from OPENDATASOURCE('SQLOLEDB','Data Source = 192.168.…
任务:把服务器1上的SQL数据库自动备份到服务器2上,命名格式=数据库名+年月日+小时. 说明: 服务器2=>192.168.0.22 数据库名=>Book 共享文件夹路径:192.168.0.22\Book 解决: 在服务器1新建一个作业,主要内容如下: exec master..xp_cmdshell 'net use Y: \\192.168.0.22\Book "数据库密码" /user:192.168.0.22\administartor' declare @sq…
由于想从别的服务器上的数据库导入一些数据过来 经网上查阅,得到 select * from openrowset( 'SQLOLEDB', '服务器名字'; '用户名'; '密码',数据库名字.dbo.表名) 结果报错: SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭.系统管理员可以通过使用 sp_configur…
首先推荐一个神作:http://www.cnblogs.com/daniel206/archive/2008/01/16/1041748.html 大神比较详细了.而且条理很清晰. 然后摘录一些其他的,补充一下上文. select * from OPENDATASOURCE( 'SQLOLEDB', 'Data Source=远程ip;User ID=sa;Password=密码' ).库名.dbo.表名 insert 本地库名..表名 select * from OPENDATASOURCE(…
--exec sp_helpserver 可以以存储过程形式执行以下: --1.1 创建登录信息(或叫创建链接服务器登录名映射)(只需选择一种方式) --1.1.1 以windows认证的方式登录 /*例如:EXEC sp_addlinkedserver 'TonyLink','','SQLOLEDB','192.168.58.208' */ EXEC sp_addlinkedserver 'DB1','','SQLOLEDB','0.0.0.0' --有自定义实例名还要加上"/实例名"…
select  *  into  本地库名..表名  from  OPENDATASOURCE(                  'SQLOLEDB',                  'Data  Source=远程ip;User  ID=sa;Password=密码'                  ).库名.dbo.表名 insert  本地库名..表名  from  OPENDATASOURCE(                  'SQLOLEDB',              …
exec sp_addlinkedserver 'ITDB', ' ', 'SQLOLEDB', '服务器IP' exec sp_addlinkedsrvlogin 'ITDB', 'false ',null, '数据库用户名', '数据库密码' --查询示例 select Top 10 * from ITDB.数据库名.dbo.表名 --导入示例 select * into 当前服务器数据库的表名 from ITDB.另一服务器的数据库名.dbo.表名 --以后不再使用时删除链接服务器 exe…
Sql Server 跨服务器连接 用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB', 'sql服务器名'; '用户名'; '密码', 数据库名.dbo.表名) --导入示例 select * into 表 from openrowset('SQLOLEDB' ,'sql服务器名';'用户名';'密码' ,数据库名.dbo.表名) --创建链接服务器 exec…
Ø  简介 在工作中编写 SQL 时经常会遇到跨库或跨服务器操作,比如查询时,通过 A 服务器的某张表关联 B 服务器某张表,进行连接查询.或者从另一台服务器中的数据,对当前数据库中的数据进行 CRUD 操作:又或者对远程服务器的数据进行 CRUD 操作.本文主要讨论在 SQL Server 中如何结合远程服务器中的数据进行操作,以及常用的几种方法. Ø  首先,模拟以下场景 1.   A服务器(本地)有一张 Score(成绩)表,数据如下: 2.   B 服务器(远程)有一张 Subject(…
今天给大家来分享一下跨服务器操作数据库,还是以SQL Server的管理工具(SSMS)为平台进行操作. 什么是跨服务器操作? 跨服务器操作就是可以在本地连接到远程服务器上的数据库,可以在对方的数据库上进行相关的数据库操作,比如增删改查. 为什么要进行跨服务器操作 随着数据量的增多,业务量的扩张,需要在不同的服务器安装不同的数据库,有时候因为业务需要,将不同的服务器中的数据进行整合,这时候就需要进行跨服务器操作了. 跨服务器操作的工具是什么? DBLINK(数据库链接),顾名思义就是数据库的链接…
--简单的跨服务器查询语句 select * from opendatasource('SQLOLEDB', 'Data Source=192.168.0.1;User ID=sa;Password=123').db_bingle.dbo.users --跨服务器插入数据 IF EXISTS (select * from sys.servers WHERE name = 'ufserver') Exec sp_droplinkedsrvlogin 'ufserver',Null exec sp_…
1.打开跨服务器功能 exec sp_configure 'show advanced options',1 reconfigure exec sp_configure 'Ad Hoc Distributed Queries',1 RECONFIGURE 2.关闭跨服务器功能 exec sp_configure 'Ad Hoc Distributed Queries',0 reconfigure exec sp_configure 'show advanced options',0 reconf…
SQL Server跨服务器查询的方法我们经常需要用到,下面就为您介绍两种SQL Server跨服务器查询的方法,如果您感兴趣的话,不妨一看. SQL Server跨服务器查询方法一:用OPENDATASOURCE下面是个跨SQLServer查询的示例Select TableA.*,TableB.* From OPENDATASOURCE(         'SQLOLEDB',         'Data Source=ServerA;User ID=UserID;Password=Passw…
用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB', 'sql服务器名'; '用户名'; '密码', 数据库名.dbo.表名) --导入示例 select * into 表 from openrowset('SQLOLEDB' ,'sql服务器名';'用户名';'密码' ,数据库名.dbo.表名) --创建链接服务器 exec sp_addlinkedserve…
SQLServer跨服务器访问数据库(openrowset/opendatasource/openquery) 1.启用Ad Hoc Distributed Queries 在使用openrowset/opendatasource前搜先要启用Ad Hoc Distributed Queries服务,因为这个服务不安全所以SqlServer默认是关闭的 启用Ad Hoc Distributed Queries的方法 SQL Server 阻止了对组件 'Ad Hoc Distributed Que…
随便说两句 折腾了一周,也算把数据库同步弄好了.首先局域网内搭建好,进行各种测试,弄的时候各种问题,弄好以后感觉还是挺简单的.本地测试好了,又在服务器进行测试,主要的难点就是跨网段同步,最后也解决了,下面就按本地与服务器解决方案来写. SQL Server 数据库同步 快照发布:发布服务器按预定的时间间隔向订阅服务器发送已发布数据的快照. 事务发布:在订阅服务器收到已发布数据的初始快照后,发布服务器将事务流式传输到订阅服务器. 对等发布:对等发布支持多主复制.发布服务器将事务流式传输到拓扑中的所…
最近做了一个链接Access的实例,记录一笔. 如果你的Access数据库文件和SQLServer数据库在同一服务器上,可直接在数据库手动创建数据库链接 步骤如下: 打开新建链接,给你的链接起一个顺眼的名字 然后提供程序选择如图所示的东西,这个可能不同的Access版本选择不同,分12.0和15.0两种,根据实际情况选一个就好了 然后,再给一个自定义的产品名称 数据源给你要链接的数据库文件.mdb的路径 如图: 点击确定.完成 在你的链接服务器上可以看到 这就完成啦. 查询结果: 当然 这是一个…
sqlserver跨数据库与跨服务器使用 日常数据库编程中经常会遇到需要跨数据库和跨服务器的情况,本文总结解决方法,具体如下: 工具/原料 SQLSERVER 数据库 方法/步骤   跨数据库使用比较简单,如ceshi数据库想使用Finance2014的A表,则使用SELECT * FROM Finance2014.dbo.A   跨服务器的使用,相对复杂一些 需要先连接服务器 EXEC sp_addlinkedserver 'srv_lnk','','SQLOLEDB','192.168.2.…
注意:被同步的表必须有主键,否则无法同步.对数据库进行操作时需要登录服务器,在服务器本地进行操作,远程对数据库进行操作不能完成所有的步骤 准备工作: 1.将发布数据库完整备份到订阅服务器上,并在订阅服务器上还原(可只有数据库结构,不需要数据) 2.在发布数据库和订阅数据库上创建相同的账号和密码(replication/密码)给replication 账号sysadmin ,先不要映射任何数据库 3.更改安全对象所有权(发布数据库和订阅数据库) ALTER AUTHORIZATION ON DAT…
create view View_AppCus as select dwmch,zjm from ksoa.dbo.mchk SQL Server跨服务器操作经常需要用到,下面就为你介绍的是SQL Server跨服务器建立视图的方法,希望对您学习SQL Server跨服务器操作方面有所帮助. --首先建立链接服务器 EXEC sp_addlinkedserver     'instance1',     '',     'MSDASQL',    NULL,    NULL,    'DRIVE…
方法一:用OPENDATASOURCE [SQL SERVER] 跨服务器查询 --1 打开 reconfigure reconfigure SELECT * FROM OPENDATASOURCE( 'SQLOLEDB', 'Data Source=192.168.0.88;User ID=sa;Password=Sa123456' ).AIS20141027173850.dbo.t_ICItem --2 关闭 reconfigure reconfigure --下面是个查询的示例,它通过用于…
SQLServer 2008中SQL增强之三 Merge(在一条语句中使用Insert,Update,Delete)   SQL Server 2008提供了一个增强的SQL命令Merge,用法参看MSDN:http://msdn.microsoft.com/zh-cn/library/bb510625.aspx 功能:根据与源表联接的结果,对目标表执行插入.更新或删除操作.例如,根据在另一个表中找到的差异在一个表中插入.更新或删除行,可以对两个表进行同步. 我们看一个例子,假如,有一总产品列表…
我们经常会遇到一个数据库要访问另一个数据库,或者一台服务器要访问另一台服务器里面的数据库. 那么这个如何实现的呢? 相信看完这篇文章你就懂了! 同一台服务器跨库访问实现 1. 首先创建两个数据库CrossLibraryTable1,CrossLibraryTable2 --创建CrossLibraryTable1脚本:   use master --打开master数据库,一般的创建语句都在master中执行. go if exists (select * from sysdatabases w…
sqlServer 2008修改字段类型和重命名字段名称的sql语句 //修改字段的类型 alter table fdi_news alter column c_author nvarchar(50) //重命名字段的名称 EXEC sp_rename 'FDI_PROJECT.[c_foreignCountryPer]','c_foreignCompanyPer','COLUMN'; //增加字段 alter table fdi_news add c_author nvarchar(50) /…
--跨服务器导入数据SQL语句: insert into [shsw_manager].[dbo].[Station_List]select * from OPENROWSET('SQLOLEDB','SERVER=31.16.1.130;uid=sa;pwd=shswhotline;Database=shsw_manager','select * from Station_List') --跨服务器查询示例 SELECT * FROM OPENROWSET('SQLOLEDB','192.16…
有时候一个项目需要用到两个数据库或多个数据库而且这些数据库在不同的服务器上时,就需要通过跨服务器查找数据 在A服务器的数据库a查询服务器B的数据库b 的bb表 假如服务器B的IP地址为:10.0.22.22 ,登陆数据库b的用户名为:admin 密码为:123456 一.创建链接服务器 在数据库a新建查询 输入 Exec sp_droplinkedsrvlogin ITSV_PRO,Null --删除原有的名为ITSV_PRO的登陆映射链接 Exec sp_dropserver ITSV_PRO…