--用openrowset连接远程SQL或插入数据

--如果只是临时访问,可以直接用openrowset

--查询示例

select * from openrowset('SQLOLEDB'

,'sql服务器名';'用户名';'密码'

,数据库名.dbo.表名)

在跨库查询时需要启用Ad Hoc Distributed Queries

启用Ad Hoc Distributed Queries:

exec sp_configure 'show advanced options',1

reconfigure

exec sp_configure 'Ad Hoc Distributed Queries',1

reconfigure

使用完成后,关闭Ad Hoc Distributed Queries:

exec sp_configure 'Ad Hoc Distributed Queries',0

reconfigure

exec sp_configure 'show advanced options',0

reconfigure

--导入示例

select * into 表 from openrowset('SQLOLEDB'

,'sql服务器名';'用户名';'密码'

,数据库名.dbo.表名)

--创建链接服务器

exec sp_addlinkedserver  'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'

exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'

go

--查询示例

select * from srv_lnk.数据库名.dbo.表名

--导入示例

select * into 表 from srv_lnk.数据库名.dbo.表名

--以后不再使用时删除链接服务器

exec sp_dropserver 'srv_lnk','droplogins'

go

--下面的示例访问来自某个表的数据,该表在 SQL Server 的另一个实例中。

SELECT *FROM OPENDATASOURCE('SQLOLEDB','Data Source=ServerName;User ID=MyUID;Password=MyPass').Northwind.dbo.Categories

--下面是个查询的示例,它通过用于 Jet 的 OLE DB 提供程序查询 Excel 电子表格。

SELECT *FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:Financeaccount.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions

复制代码

例如:

SELECT *

FROM OPENQUERY(Far_MDB, 'SELECT * FROM MDB_Member')

这就是从我的链接服务器当中去查询MDB_Member表的数据

备注:

1、关于链接服务器的详细情况请参阅联机丛书中的sp_addlinkedserver、 sp_addlinkedsrvlogin、sp_addserver、sp_dropserver、sp_serveroption、sp_linkedservers等系统级存储过程。

2、关于此链接服务器的创建及其使用在不同环境下(全部内网服务器、一内网一公网服务器、全公网服务器)测试,均告通过。

3、有时候在存储过程中访问链接服务器的时候可能会碰到如下的提示,必须要对ANSI warning 和ANSI nulls进行设置,这时候按照如下的方法进行设置:

设置本地数据库的属性-->连接-->选上ANSI warning 和 ANSI nulls

如何用sql语句进行跨库查询

在机器B上的数据库database2中创建一个临时表#tmp,

内容就是机器A上的数据库database1里面的Table1。

如何用sql语句完成?(不借用dts等)

SQL code --创建链接服务器

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 本地表

用   链接服务器

OPENROWSET

OPENDATASOURCE

都可以

链接服务器.database1.dbo.table1

链接服务器.database1.dbo.table1

SQL code

select * into #

from openrowset('sqloledb','ip';'sa';'','select * from pubs.dbo.jobs')

sqlserver垮库查询_SQLServer跨库查询--分布式查询相关推荐

  1. sqlserver垮库查询_sql跨库查询(sqlserver跨库查询)

    sql跨库查询(sqlserver跨库查询) 2020-07-24 11:56:42 共10个回答 首先你的要求不明确..要是按照你的要求的话以下语句就可以解决了跨库中只要用.来表示就可以了db.ta ...

  2. mysql跨库分页查询_跨库跨表分页

    前言 之前经常思考的一个问题,数据库分表后,分页怎么做才是最好的方案呢?今天就来整理一波. 由来 首先是由来,数据量增大,一张表数据太多的话,会使用分表.同理,一个数据库实例到达瓶颈,所以可能需要分库 ...

  3. mysql 跨库插入_sql 跨库和域插入数据库

    sql 跨库和域插入数据库 ; SELECT * INTO [order] FROM OPENROWSET ( 'SQLOLEDB ', '域名'; '用户名'; '密码',数据库名称.表名) 直接执 ...

  4. mysql 索引碎片查询_Sqlserver:索引碎片的查询

    索引 碎片 : 内部 碎片 (或说叶级填充率):反映数据叶级的空间占用率或空闲率 外部 碎片 :由于sqlserver以连续的8个page作为一个数据库块(区)extent作为读取单位,故此由于物理存 ...

  5. 计组之总线:2、总线仲裁(链式查询、计数器查询、独立请求、分布式查询)

    2.总线仲裁 思维导图 什么是总线仲裁? 仲裁方式 1.集中仲裁方式 链式查询方式 计数器查询方式 独立请求方式 2.分布仲裁方式 思维导图 什么是总线仲裁? 仲裁方式 1.集中仲裁方式 链式查询方式 ...

  6. SQL注入—跨库注入

    SQL注入-跨库注入 1.SQL注入-跨库注入 1.1.前言 1.2.跨库注入介绍 2.跨库注入 2.1.跨库注入准备 2.2.跨库注入流程 2.2.1.判断是否为管理员权限 2.2.2.获取数据库下 ...

  7. 什么是知网的跨库检索?为什么我的文章在知网检索不到了?

    最近,很多作者都在问这样一个问题:我之前发的文章,以前还能再知网查到,为什么现在查不到了? 不止一个作者有这样的问题,今天我们统一解答一下: 首先,遇到这种情况不要慌张.文章最开始的时候还能检索,说明 ...

  8. mysql不同服务器查询_实战操作SQL Server连接查询不同服务器表数据

    今日产品部要导批数据,但是需要连接查询查询的几个表不在同一服务器上.所以我开始是这么干的: 1.查询一台服务器的数据,并导入本地Excel 2.查询另一台服务器的数据,并导入本地Excel 3.Exc ...

  9. Hazelcast IMDG参考中文版手册-第十一章-分布式查询

    分布式查询访问存储在相同或不同成员上的多个数据源的数据. Hazelcast对您的数据进行分区,并将其分布到成员集群中.您可以迭代映射条目并查找您感兴趣的某些条目(由谓词指定).但是,这不是非常有效, ...

最新文章

  1. PyTorch 高级实战教程:基于 BI-LSTM CRF 实现命名实体识别和中文分词
  2. Java项目:农业计算工具(java+swing)
  3. platform_driver_register适配的两种方式及probe是否启动与硬件关系
  4. SEAndroid策略介绍1
  5. php 方法求 的近似值,PHP中的等角近似
  6. 从性能角度选购Adroid智能手机,双核、大屏与游戏的取舍
  7. 大话设计模式—观察者模式
  8. 分享9个实用的电脑维修技巧,赶紧收藏吧!
  9. JavaScript(五)—— Web APIs 简介/JavaScript 必须掌握的 DOM 操作 (丰富案例 + 思维导图)
  10. sourcetree的安装及使用
  11. 面试题10:斐波那契数列
  12. OpenCV 直方图均衡化 equalizeHist
  13. Linux 五个最牛视频编辑软件
  14. 文本框只能输入数字、字母,屏蔽粘贴
  15. IP地址-子网掩码-默认网关之间的关系
  16. iOS菜鸟笔记4:一个简单的TableView
  17. ORAN C平面 Section Type 6
  18. 通过PostMessage/SendMessage实现模拟键盘鼠标按键,发送不成功或出现重复按键的可参考本文
  19. 使用Python处理excel表格(openpyxl)教程
  20. 安卓安全技能树整理v1.0

热门文章

  1. 【分布式训练】单机多卡—PyTorch
  2. 【数据挖掘】数据预处理
  3. Sublime Text 3无法安装Package Control插件的解决
  4. NuGet version
  5. 设计模式系列 - 原型模式
  6. js几种常见排序的实现
  7. Attention Model
  8. CF876 F 思维 枚举
  9. AT91SAM9260EK-38k产生原理
  10. 设计模式1——设计模式的原则