查询链接服务器信息,如何通过 SQL Server 链接服务器和分布式查询使用 Excel
作为链接服务器查询 Excel
您可以使用企业管理器、系统存储过程或 SQL-DMO(分布式管理对象)将 Excel 数据源配置为 SQL Server 链接服务器。在所有的这些情况中,您总需要设置以下四个属性:
链接服务器要使用的名称。
连接要使用的 OLE DB 提供程序。
Excel 工作簿的数据源或完整路径和文件名。
将目标标识为 Excel 工作簿的提供程序字符串。默认情况下,Jet 提供程序需要 Access 数据库。
系统存储过程 sp_addlinkedserver 也需要 @srvproduct 属性,该属性可以是任何字符串值。
使用企业管理器配置 Excel 链接服务器
在企业管理器中,单击以展开安全文件夹。
右键单击链接服务器,然后单击新建链接服务器。
在常规选项卡上,按照下列步骤操作:
在第一个文本框中,为该链接服务器键入任意名称。
在服务器类型文本框中,单击其他数据源。
在提供程序名称下拉列表框中,单击 Microsoft Jet 4.0 OLE DB 提供程序。
在数据源文本框中,键入 Excel 文件的完整路径和文件名。
在提供程序字符串文本框中,键入 Excel 8.0 代表 Excel 97、2000 或 2002 工作簿。
单击确定以创建新的链接服务器。
单击以展开此新链接服务器的名称,从而展开它所包含的对象列表。
在新建链接服务器名称下,单击表。注意,工作表和命名区域将出现在右窗格中。
使用存储过程配置 Excel 链接服务器
您还可以使用系统存储过程 sp_addlinkedserver 将 Excel 数据源配置为链接服务器:
DECLARE @RC int
DECLARE @server nvarchar(128)
DECLARE @srvproduct nvarchar(128)
DECLARE @provider nvarchar(128)
DECLARE @datasrc nvarchar(4000)
DECLARE @location nvarchar(4000)
DECLARE @provstr nvarchar(4000)
DECLARE @catalog nvarchar(128)
-- Set parameter values
SET @server = 'XLTEST_SP'
SET @srvproduct = 'Excel'
SET @provider = 'Microsoft.Jet.OLEDB.4.0'
SET @datasrc = 'c:\book1.xls'
SET @provstr = 'Excel 8.0'
EXEC @RC = [master].[dbo].[sp_addlinkedserver] @server, @srvproduct, @provider,
@datasrc, @location, @provstr, @catalog
如上所述,此存储过程另需一个任意字符串值作为 @srvproduct 参数的值,此参数在企业管理器配置中显示为“产品名称”。不使用 @location 和 @catalog 参数。
使用 SQL-DMO 配置 Excel 链接服务器
您可以使用 SQL 分布式管理对象从 Microsoft Visual Basic 或其他编程语言中将一个 Excel 数据源以编程方式配置为链接服务器。您必须也提供企业管理器配置中要求的那四个参数。
Private Sub Command1_Click()
Dim s As SQLDMO.SQLServer
Dim ls As SQLDMO.LinkedServer
Set s = New SQLDMO.SQLServer
s.Connect "(local)", "sa", "password"
Set ls = New SQLDMO.LinkedServer
With ls
.Name = "XLTEST_DMO"
.ProviderName = "Microsoft.Jet.OLEDB.4.0"
.DataSource = "c:\book1.xls"
.ProviderString = "Excel 8.0"
End With
s.LinkedServers.Add ls
s.Close
End Sub
查询 Excel 链接服务器
将 Excel 数据源配置为链接服务器之后,您可以方便地通过“查询分析器”或其他客户端应用程序查询其数据。例如,为了检索存储在 Excel 文件 Sheet1 中的数据行,以下代码使用了您使用 SQL-DMO 配置的链接服务器:
SELECT * FROM XLTEST_DMO...Sheet1$
您还可以使用 OPENQUERY 以“passthrough”(传递)方式查询 Excel 链接服务器,如下所示:
SELECT * FROM OPENQUERY(XLTEST_DMO, 'SELECT * FROM [Sheet1$]')
OPENQUERY 需要的第一个参数是链接服务器名称。工作表名称之间需要用分隔符分开,如上所示。
您还可以使用以下查询获得 Excel 链接服务器上所有可用表的列表:
EXECUTE SP_TABLES_EX 'XLTEST_DMO'
查询链接服务器信息,如何通过 SQL Server 链接服务器和分布式查询使用 Excel相关推荐
- transact-sql_如何使用Transact-SQL创建,配置和删除SQL Server链接服务器
transact-sql Linked servers allow getting data from a different SQL Server instance using single T-S ...
- sql虚拟服务器安装,安装SQL Server 2012服务器
1. 全部实验内容使用VMware Horizon 7.9 版本桌面虚拟化技术实现. 2. 提供完整的录像.实验手册及全部安装文件,保证你可以从零开始,完整搭建VMware Horizon桌面虚拟化环 ...
- 如何使用SQL Server链接服务器查询Excel数据
Linked servers allow SQL Server access to data from a remote data source. A remote data source can b ...
- SQL SERVER 跨服务器查询
方法一: 用OPENDATASOURCE 下面是个跨SQLServer查询的示例 Select TableA.*,TableB.* From OPENDATASOURCE( 'SQL ...
- SQL Server链接服务器 Linked Server
使用方法 exec sp_addlinkedserver @server,@srvproduct,@provider,@datasrc,@location,@provstr,@catalog; exe ...
- 在线sql服务器,SQL Server链接服务器
SQL Server链接服务器 SQL Server提供链接到另一个服务器的选项.这通常被用来连接到其他SQL Server数据库,但它也可以被用来连接到一个Microsoft Access数据库.这 ...
- SQL SERVER跨服务器查询
SQL SERVER跨服务器查询 1.执行存储过程 sp_addlinkedserver 以将服务器添加到 sys.servers. -server124为远程服务器的别名 exec sp_addli ...
- SQL Server “链接服务器”的使用
链接服务器是干什么的? 链接服务器 可以把远程数据库链接到本地,然后可以像使用本地数据库一样进行查询,可以交叉本地数据库进行查询 这样 每个数据库可以分布在不同服务器上,一方面减轻服务器压力,另一方面 ...
- XenApp_XenDesktop_7.6实战篇之九:SQL Server数据库服务器规划及部署
安装SQL Server 数据库,用于支持Desktop Studio 和桌面云管理台数据存储和访问.在简单的POC测试中,数据库可以只配置单机:但数据库故障时,不但影响配置管理台,也会影响DDC的运 ...
最新文章
- 学python需要什么文化基础-数据分析需要掌握那些基础知识?
- 微服务架构下,解决数据一致性问题的实践
- 中国黄金行业投资需求与收益预测报告2022年版
- Django的外键创建
- 大话设计模式笔记 享元模式
- Spring的AOP-底层原理
- 12种获取节点和元素的代码
- Android学习之路十三:BroadCast
- python复制文件到指定文件夹_python 拷贝文件夹下所有的文件到指定文件夹(不包括目录)...
- 开课吧python小课学了有用吗-未来2年,会计发展新趋势,你有必要了解一下......
- HDU1052——Tian Ji -- The Horse Racing
- 线性表(插入/清除数据/快慢指针查找中间数据)
- 分布式与微服务☞web组件kafka
- 华为freelace耳机修整详录
- mysql:列类型之Spatial
- 很多人知道外包的种种不好,但还是选择去外包,这是为什么呢?
- Microsoft Project 2010 设置子任务
- 派森编程软件python有什么用_派森Python下载
- css清除浮动的几种方式
- xv6 makefile详解
热门文章
- ❤️六W字《计算机基础知识》(三)(建议收藏)❤️
- html css模仿实例,HTML+CSS模仿大学网站主页
- qt5python gui cookbook_Python GUI Programming Cookbook学习笔记
- java 控制台五子棋_java控制台五子棋
- ue4 android vulkan,在Android用vulkan完成蓝绿幕扣像
- 聊天室程序python_Python聊天室程序(基础版)
- 【测试工具】禅道项目管理工具设置触发邮箱
- 【Python】提升Python程序性能的好习惯2
- jQuery无任何标示获取td在表格中的行数和列数
- Python猫荐书系列:文也深度学习,理也深度学习