SqlServer 跨库访问

同实例跨库

  只需要 库名.dbo.表 dbo可省略 如:

use Test
select * from rdrecords
select * from oa.dbo.UserInfo

不同实例与不同ip是相同的

exec sp_addlinkedserver   ‘ITSV ‘, ‘ ‘, ‘SQLOLEDB ‘, ‘.,1333‘
exec sp_addlinkedsrvlogin ‘ITSV ‘, ‘false ‘,null, ‘sa ‘, ‘sa‘ 

select * from itsv.swie.dbo.a_base

exec sp_dropserver  ‘ITSV ‘, ‘droplogins ‘ 

还可以这样

select * from openrowset( ‘SQLOLEDB ‘, ‘.,1333‘; ‘sa‘; ‘sa‘,swie.dbo.a_base)
/*
执行出错 出下列信息时 要执行下边的开操作
消息 15281,级别 16,状态 1,第 1 行
SQL Server 阻止了对组件 ‘Ad Hoc Distributed Queries‘ 的 STATEMENT ‘OpenRowset/OpenDatasource‘ 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 ‘Ad Hoc Distributed Queries‘。有关启用 ‘Ad Hoc Distributed Queries‘ 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。
*/
--开
exec sp_configure ‘show advanced options‘,1
reconfigure
exec sp_configure ‘Ad Hoc Distributed Queries‘,1
reconfigure

--关
exec sp_configure ‘Ad Hoc Distributed Queries‘,0
reconfigure
exec sp_configure ‘show advanced options‘,0
reconfigure

原文地址:https://www.cnblogs.com/SoftWareIe/p/9755694.html

时间: 2024-08-03 23:37:23

SqlServer 跨库访问的相关文章

SQL Server跨库访问

MSSQLServer不同服务器数据库之间的数据操作 方法1: --创建链接服务器 exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址' exec sp_addlinkedsrvlogin  'ITSV ', 'false ',null, '用户名', '密码' --查询示例 select * from ITSV.数据库名.dbo.表名 --导入示例 select * into 表 from ITSV.数据库名.db

SqlServer跨库查询

由于业务的拆分,数据库拆分为两种作用: 汇总数据库(Master,头节点数据库), 子节点数据库(Compute Node,计算子节点数据库) 这样,就设计到子节点访问头节点数据库中的某张汇总表,这种表的记录一般在几,到几十万行左右,目前适合做跨库查询. 跨库查询目前分为两种: 通过sp_addlinkedserver建立链接服务器 没有链接服务器时,可以使用openrowset或者opendatasource函数 在部署时,需要在SQLSERVER外围应用配置器中启用OpenRowSet和Op

SQLServer跨库查询--分布式查询

出处:http://www.cnblogs.com/doosmile/archive/2012/03/16/2400646.html --用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB' ,'sql服务器名';'用户名';'密码' ,数据库名.dbo.表名) 在跨库查询时需要启用Ad Hoc Distributed Queries启用Ad Hoc Distri

SQLServer跨库查询--分布式查询[转载]

--用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB' ,'sql服务器名';'用户名';'密码' ,数据库名.dbo.表名) --导入示例 select * into 表 from openrowset('SQLOLEDB' ,'sql服务器名';'用户名';'密码' ,数据库名.dbo.表名) --创建链接服务器 exec sp_addlinkedserve

SQLServer 跨库查询实现方法

不使用链接的服务器名,而提供特殊的连接信息,并将其作为四部分对象名的一部分 本文给出一条 SQL 语句用于展示在同一名服务器上,不同的数据库间查询,注意当前连接用户要对两个库都有权限SQL Server 中 SQL 语句中对象的完整表达式是: [DatabaseServer].[DatabaseName].[DatabaseSchema].[DatabaseObject] 本文给出一条 SQL 语句用于展示在同一名服务器上,不同的数据库间查询,注意当前连接用户要对两个库都有权限. 复制代码代码如

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 Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作

SQL Server 常用跨库查询,sqlserver跨库

博客出处:http://www.bkjia.com/sjkqy/984843.html 1.临时使用方法  OpenRowset A. 使用有 SELECT 的OPENROWSET 与 Microsoft OLE DB Provider for SQL Server     以下范例使用 Microsoft OLE DB Provider for SQL Server,以存取命名为 remote1 的远程数据服务器上 pubs 数据库的 authors 表.从 datasource.user_i

oracle 跨库访问

创建DBLINK的方法: 1. create public database link dblink connect to totalplant identified by totalplant using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = LOCALHOST)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = prd.gdc) ) )'; 语法解释:

sqlserver 跨服务器访问数据

需求:两个一模一样的表,分别分布在两个服务器的数据库上,现在要在一个表中,查看这两个表的内容,并让Id排序 1:在本地数据库查询分析器中,运行以下两段语句: --创建链接服务器 exec sp_addlinkedserver@server= 'otherdb',                  --给要链接的服务器取的别名,也可以用下面的IP地址@srvproduct= '',                       --空@provider='SQLOLEDB',