日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

查询链接服务器信息,如何通过 SQL Server 链接服务器和分布式查询使用 Excel

發(fā)布時(shí)間:2025/3/15 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 查询链接服务器信息,如何通过 SQL Server 链接服务器和分布式查询使用 Excel 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作為鏈接服務(wù)器查詢 Excel

您可以使用企業(yè)管理器、系統(tǒng)存儲(chǔ)過程或 SQL-DMO(分布式管理對(duì)象)將 Excel 數(shù)據(jù)源配置為 SQL Server 鏈接服務(wù)器。在所有的這些情況中,您總需要設(shè)置以下四個(gè)屬性:

鏈接服務(wù)器要使用的名稱。

連接要使用的 OLE DB 提供程序。

Excel 工作簿的數(shù)據(jù)源或完整路徑和文件名。

將目標(biāo)標(biāo)識(shí)為 Excel 工作簿的提供程序字符串。默認(rèn)情況下,Jet 提供程序需要 Access 數(shù)據(jù)庫(kù)。

系統(tǒng)存儲(chǔ)過程 sp_addlinkedserver 也需要 @srvproduct 屬性,該屬性可以是任何字符串值。

使用企業(yè)管理器配置 Excel 鏈接服務(wù)器

在企業(yè)管理器中,單擊以展開安全文件夾。

右鍵單擊鏈接服務(wù)器,然后單擊新建鏈接服務(wù)器。

在常規(guī)選項(xiàng)卡上,按照下列步驟操作:

在第一個(gè)文本框中,為該鏈接服務(wù)器鍵入任意名稱。

在服務(wù)器類型文本框中,單擊其他數(shù)據(jù)源。

在提供程序名稱下拉列表框中,單擊 Microsoft Jet 4.0 OLE DB 提供程序。

在數(shù)據(jù)源文本框中,鍵入 Excel 文件的完整路徑和文件名。

在提供程序字符串文本框中,鍵入 Excel 8.0 代表 Excel 97、2000 或 2002 工作簿。

單擊確定以創(chuàng)建新的鏈接服務(wù)器。

單擊以展開此新鏈接服務(wù)器的名稱,從而展開它所包含的對(duì)象列表。

在新建鏈接服務(wù)器名稱下,單擊表。注意,工作表和命名區(qū)域?qū)⒊霈F(xiàn)在右窗格中。

使用存儲(chǔ)過程配置 Excel 鏈接服務(wù)器

您還可以使用系統(tǒng)存儲(chǔ)過程 sp_addlinkedserver 將 Excel 數(shù)據(jù)源配置為鏈接服務(wù)器:

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

如上所述,此存儲(chǔ)過程另需一個(gè)任意字符串值作為 @srvproduct 參數(shù)的值,此參數(shù)在企業(yè)管理器配置中顯示為“產(chǎn)品名稱”。不使用 @location 和 @catalog 參數(shù)。

使用 SQL-DMO 配置 Excel 鏈接服務(wù)器

您可以使用 SQL 分布式管理對(duì)象從 Microsoft Visual Basic 或其他編程語(yǔ)言中將一個(gè) Excel 數(shù)據(jù)源以編程方式配置為鏈接服務(wù)器。您必須也提供企業(yè)管理器配置中要求的那四個(gè)參數(shù)。

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 鏈接服務(wù)器

將 Excel 數(shù)據(jù)源配置為鏈接服務(wù)器之后,您可以方便地通過“查詢分析器”或其他客戶端應(yīng)用程序查詢其數(shù)據(jù)。例如,為了檢索存儲(chǔ)在 Excel 文件 Sheet1 中的數(shù)據(jù)行,以下代碼使用了您使用 SQL-DMO 配置的鏈接服務(wù)器:

SELECT * FROM XLTEST_DMO...Sheet1$

您還可以使用 OPENQUERY 以“passthrough”(傳遞)方式查詢 Excel 鏈接服務(wù)器,如下所示:

SELECT * FROM OPENQUERY(XLTEST_DMO, 'SELECT * FROM [Sheet1$]')

OPENQUERY 需要的第一個(gè)參數(shù)是鏈接服務(wù)器名稱。工作表名稱之間需要用分隔符分開,如上所示。

您還可以使用以下查詢獲得 Excel 鏈接服務(wù)器上所有可用表的列表:

EXECUTE SP_TABLES_EX 'XLTEST_DMO'

總結(jié)

以上是生活随笔為你收集整理的查询链接服务器信息,如何通过 SQL Server 链接服务器和分布式查询使用 Excel的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。