當前位置:首頁 » 編程語言 » sql語句鏈接伺服器

sql語句鏈接伺服器

發布時間: 2022-09-27 10:24:56

Ⅰ 如何通過 sql Server 鏈接伺服器和分布式查詢使用 Excel

要求
下面的列表列出了推薦使用的硬體、軟體、網路架構以及所需的 Service Pack:
Microsoft SQL Server 7.0、Microsoft SQL Server 2000 或 Microsoft SQL Server 2005 的可用實例
Microsoft Visual Basic 6.0(針對使用 Visual Basic 的 ADO 示例)
本文的部分內容假定您熟悉下列主題:
數據傳輸服務
鏈接伺服器和分布式查詢
Visual Basic 中的 ADO 開發
回到頂端
示例
導入與追加
本文使用的示例 SQL 語句演示了「創建表」查詢。該查詢通過使用 SELECT...INTO...FROM 語法將 Excel 數據導入新的 SQL Server 表。如這些代碼示例所示,在繼續引用源對象和目標對象時,可以通過使用 INSERT INTO...SELECT...FROM 語法將這些語句轉換成追加查詢。

使用 DTS 或 SSIS
可以使用「SQL Server Data Transformation Services (DTS) 導入向導」或「SQL Server 導入和導出向導」將 Excel 數據導入到 SQL Server 表中。在逐步執行向導並選擇 Excel 源表時,要記住附加美元符號 ($) 的 Excel 對象名稱代表工作表(例如,Sheet1$),而沒有美元符號的普通對象名稱代表 Excel 指定的范圍。

使用鏈接伺服器
要簡化查詢,可以將 Excel 工作簿配置為 SQL Server 中的鏈接伺服器。 有關其他信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
306397 如何:結合 SQL Server 鏈接的伺服器和分布式查詢使用 Excel
下列代碼將 Excel 鏈接伺服器「EXCELLINK」上的 Customers 工作表數據導入新的名為 XLImport1 的 SQL Server 表:
SELECT * INTO XLImport1 FROM EXCELLINK...[Customers$]

還可以通過按照以下方式使用 OPENQUERY 以全通過方式對源數據執行查詢:
SELECT * INTO XLImport2 FROM OPENQUERY(EXCELLINK,
'SELECT * FROM [Customers$]')

使用分布式查詢
如果不想將對 Excel 工作簿的永久連接配置為鏈接伺服器,可以通過使用 OPENDATASOURCE 或 OPENROWSET 函數為特定目的導入數據。下列代碼示例也能將 Excel Customers 工作表數據導入新的 SQL Server 表:
SELECT * INTO XLImport3 FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\test\xltest.xls;Extended Properties=Excel 8.0')...[Customers$]

SELECT * INTO XLImport4 FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\test\xltest.xls', [Customers$])

SELECT * INTO XLImport5 FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\test\xltest.xls', 'SELECT * FROM [Customers$]')

使用 ADO 和 SQLOLEDB
當通過使用 Microsoft OLE DB for SQL Server (SQLOLEDB) 在 ADO 應用程序中連接到 SQL Server 時,可以使用與「使用分布式查詢」 一節中相同的「分布式查詢」語法將 Excel 數據導入 SQL Server。

下列 Visual Basic 6.0 代碼示例要求添加對 ActiveX 數據對象 (ADO) 的項目引用。此代碼示例還演示了如何在 SQLOLEDB 連接上使用 OPENDATASOURCE 和 OPENROWSET。
Dim cn As ADODB.Connection
Dim strSQL As String
Dim lngRecsAff As Long
Set cn = New ADODB.Connection
cn.Open "Provider=SQLOLEDB;Data Source=<server>;" & _
"Initial Catalog=<database>;User ID=<user>;Password=<password>"

'Import by using OPENDATASOURCE.
strSQL = "SELECT * INTO XLImport6 FROM " & _
"OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0', " & _
"'Data Source=C:\test\xltest.xls;" & _
"Extended Properties=Excel 8.0')...[Customers$]"
Debug.Print strSQL
cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
Debug.Print "Records affected: " & lngRecsAff

'Import by using OPENROWSET and object name.
strSQL = "SELECT * INTO XLImport7 FROM " & _
"OPENROWSET('Microsoft.Jet.OLEDB.4.0', " & _
"'Excel 8.0;Database=C:\test\xltest.xls', " & _
"[Customers$])"
Debug.Print strSQL
cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
Debug.Print "Records affected: " & lngRecsAff

'Import by using OPENROWSET and SELECT query.
strSQL = "SELECT * INTO XLImport8 FROM " & _
"OPENROWSET('Microsoft.Jet.OLEDB.4.0', " & _
"'Excel 8.0;Database=C:\test\xltest.xls', " & _
"'SELECT * FROM [Customers$]')"
Debug.Print strSQL
cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
Debug.Print "Records affected: " & lngRecsAff

cn.Close
Set cn = Nothing

使用 ADO 和 Jet Provider
上一節中的示例使用 ADO 和 SQLOLEDB Provider 連接到從 Excel 到 SQL 導入的目標。也可以使用 OLE DB Provider for Jet 4.0 來連接到 Excel 源。

Jet 數據引擎可以通過使用具有三種不同格式的特殊語法來在 SQL 語句中引用外部資料庫
[Full path to Microsoft Access database].[Table Name]
[ISAM Name;ISAM Connection String].[Table Name]
[ODBC;ODBC Connection String].[Table Name]
本節使用第三種格式創建到目標 SQL Server 資料庫的 ODBC 連接。可以使用 ODBC 數據源名稱 (DSN) 或者 DSN-less 連接字元串:
DSN:
[odbc;DSN=<DSN name>;UID=<user>;PWD=<password>]

DSN-less:
[odbc;Driver={SQL Server};Server=<server>;Database=<database>;
UID=<user>;PWD=<password>]

下列 Visual Basic 6.0 代碼示例要求添加對 ADO 的項目引用。此代碼示例演示了如何使用 Jet 4.0 Provider 通過 ADO 連接將 Excel 數據導入到 SQL Server。
Dim cn As ADODB.Connection
Dim strSQL As String
Dim lngRecsAff As Long
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\test\xltestt.xls;" & _
"Extended Properties=Excel 8.0"

'Import by using Jet Provider.
strSQL = "SELECT * INTO [odbc;Driver={SQL Server};" & _
"Server=<server>;Database=<database>;" & _
"UID=<user>;PWD=<password>].XLImport9 " & _
"FROM [Customers$]"
Debug.Print strSQL
cn.Execute strSQL, lngRecsAff, adExecuteNoRecords
Debug.Print "Records affected: " & lngRecsAff

cn.Close
Set cn = Nothing

也可以通過使用該語法(Jet Provider 支持)將 Excel 數據導入其他 Microsoft Access 資料庫、索引順序存取方法 (ISAM)(「desktop」)資料庫或 ODBC 資料庫。
參考資料: http://web.degree-distance.com/eh/

Ⅱ MySQL伺服器是如何控制用戶連接執行SQL語句的

摘要 您好: MySQL分為服務端和客戶端,服務端進程為mysqld, 客戶端工具為mysql。mysql是一個互動式客戶端程序,使您可以連接到MySQL伺服器,執行SQL語句並查看結果。

Ⅲ sql server怎麼設置鏈接伺服器

展開伺服器對象-->鏈接伺服器-->右擊"新建鏈接伺服器"

輸入鏈接伺服器的IP或者輸入域名(域名會更方便一些,可以更換伺服器IP地址)

設置鏈接伺服器的安全性(登錄的用戶名和密碼)

創建成功後就可以看到了,如下圖

5
現在就可以使用鏈接伺服器了,用本地登錄SqlServer,新建一個查詢,輸入
Select * From [鏈接伺服器名].[遠程資料庫名].[所有者].[表名]
比如
Select * from [3G.XXXX.NET].[cntvs].[dbo].[tbUsers]

6
如果可以查詢到數據說明一切正常嘍

Ⅳ sql server怎麼查詢鏈接伺服器

select * from 鏈接伺服器名字.資料庫名.dbo.表名 ,只要你創建的鏈接伺服器正確,那個語句就能成功執行。

Ⅳ sqlserver2012怎麼鏈接伺服器

SQL Server 2012建立鏈接伺服器

Server1:

DB Version: 2012

Server IP: 192.168.120.252

Souce Database


Server2:

DB Version: 2012

Server IP: 192.168.120.210

Target Database

在Server2上執行以下語句

execsp_addlinkedserver'sqlserver','','SQLOLEDB','192.168.120.252'
execsp_addlinkedsrvlogin'sqlserver','false',null,'sa',''
go
SELECT*
FROM
OPENROWSET('SQLOLEDB',
'server=192.168.120.252;uid=sa;pwd=XXXXX',--字元串
DBName.dbo.TableName)--直接寫表的名稱

Ⅵ sql更改鏈接伺服器名稱

鏈接伺服器的名稱,無修改的SQL語句,因為鏈接伺服器的名稱是和相關用戶存在關聯。

故,建議先刪除連接伺服器,再創建新的。

以下代碼,可供參考

--刪除部分:

--刪除運行本地與遠程之間的用戶映射

EXEC sys.sp_droplinkedsrvlogin 'SyncServer',null

GO

--刪除鏈接伺服器

EXEC sys.sp_dropserver 'SyncServer','droplogins'

GO


--創建部分:

--創建遠程鏈接伺服器

EXEC sys.sp_addlinkedserver

@server = 'SyncServer', -- 目標伺服器別名

@srvproct = 'MSSQL', -- 產品名稱

@datasrc = 'xxxxxxxxxx', -- 目標伺服器名稱

@provider = 'SQLOLEDB'

GO


--創建本地用戶與遠程伺服器中用戶之間的映射

EXEC sys.sp_addlinkedsrvlogin

@rmtsrvname = 'SyncServer', -- 與以上 @server 同名

@useself = 'false', --是否通過模擬本地登錄名或顯式提交登錄名和密碼來連接到遠程伺服器

@locallogin = null, --本地登錄

@rmtuser ='xxxxxx',--用戶名

@rmtpassword ='xxxxxxx' --密碼

GO

Ⅶ SQL代理的作業中,如何對鏈接伺服器直接操作

一、直接在「對象資源管理器」中使用「新建查詢」,輸入SQL語句使用,如:select * from tablename
二、在本地伺服器查詢窗口中,使用鏈接伺服器方式進行查詢,如:select * from tm162.testdb.dbo.tablename

Ⅷ Sql Server 鏈接接伺服器 sql 語句奇怪問題,高手們來解一下

sql
server
分析只是對sql語句進行語法檢查,不能檢測對象名等是否有效,如果表名無效則檢查資料庫是否有你那個表就能解決問題了。
可以下載一個sql
插件:sql
assistant,提高寫sql語句的效率。很好用:)

Ⅸ sql server 2008怎麼鏈接伺服器

1、展開伺服器對象-->鏈接伺服器-->右擊"新建鏈接伺服器"
2、輸入鏈接伺服器的IP或者輸入域名(域名會更方便一些,可以更換伺服器IP地址)
3、設置鏈接伺服器的安全性(登錄的用戶名和密碼)
4、創建成功後就可以看到了,
5、現在就可以使用鏈接伺服器了,用本地登錄SqlServer,新建一個查詢,輸入
6、Select * From [鏈接伺服器名].[遠程資料庫名].[所有者].[表名]
7、比如 Select * from [3G.XXXX.NET].[cntvs].[dbo].[tbUsers]
8、如果可以查詢到數據說明一切正常嘍

Ⅹ [圖]如何使用SQL鏈接伺服器查詢外來數據

但我們大多數人都沒有那麼幸運。有時,我們需要的數據並非資料庫格式,或者位於不同的伺服器上。SQL Server具有足夠的靈活性,提供大量你收集數據時所需要的方法。其中最方便的方法之一是使用鏈接伺服器(linked server)直接連接數據。(微軟SQL Server 2005 Express Edition也支持鏈接伺服器。)何為鏈接伺服器?簡單來說,鏈接伺服器是指與對象鏈接和嵌入資料庫(OLEDB)數據源建立的一個連接。技術上說,OLEDB是一個從一系列數據源中恢復數據的標准微軟API。如果這個解釋還不夠清楚,不用擔心。好消息是,它足夠靈活,可以連接資料庫和非資料庫格式,如一個電子表格或電子郵件客戶端。簡而言之,SQL Server支持任何OLEDB提供程序(也叫做驅動器)。另一個好消息:你可以使用Trnasact-sql或Management Studio來建立連接。建立一個鏈接伺服器後,SQL Server就可以登錄到另一台資料庫伺服器。那表示你可以在一台遠程伺服器上運行查詢。你可以任意使用兩種類型的鏈接伺服器查詢:特殊鏈接和永久鏈接。特殊鏈接技術上說,你不必使用「鏈接伺服器」這個名詞來確定一個特殊查詢。那個名詞實際上是指一個SQL Server對象。但是,你會經常看到這個名詞用來指特殊鏈接查詢。特殊查詢打開和關閉一個連接。永久鏈接伺服器一直可用。通過OPENROWSET完成非頻繁的鏈接任務,使用以下語法:OPENROWSET('providername', 'datasource', 'username', 'password', object)OPENROWSET消耗更少的資料庫空間。使用合法的Transact-sql語句來操作重新恢復的數據。其自變數不需要加以說明,但要記住的是,datasource是指數據源的完整路徑,而不只是一個文件名。此外,provider提供SQL Server需要進入並收集數據的指令。它們專門針對你所訪問的外來軟體。現在,我們來看一個簡單的特殊查詢實例,並選擇微軟Access樣本資料庫Northwind的Employees表中的所有記錄:SELECT*FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','C:Program FilesMicrosoft .mdb';'admin';'', Employees)AS EmployeesFromAccess圖A顯示的是迅速恢復的結果,它要求用戶(管理員)擁有適當的許可。(如果你想運行這個查詢,一定要把路徑更新到Northwind.mbd,以與你的系統相適應。)提供程序字元串專門針對數據引擎Jet。AS關鍵字為SQL Server中的新表提供一個名稱。圖A:使用OPENROWSET完成外來數據的非頻繁查詢(Express版)。如果特殊查詢返回錯誤消息,你可能需要激活特殊查詢特性。(默認情況下,SQL Server禁用特殊查詢。)要激活特殊查詢,運行SQL Server配置管理器(SQL Server Express版外圍應用配置器),點擊外圍配置特性(Surface Area Configuration For Features)鏈接,並查看激活OPENROWSET和OPENDATASOURCE支持(Enable OPENROWSET And OPENDATASOURCE Support)選項。然後,點擊OK並關閉實用工具。

熱點內容
答答腳本 發布:2022-12-07 09:08:57 瀏覽:793
資產配置申請表配置方式怎麼寫 發布:2022-12-07 09:05:51 瀏覽:692
胃癌健康密碼是多少 發布:2022-12-07 09:05:08 瀏覽:352
androidsdk源代碼 發布:2022-12-07 09:02:20 瀏覽:843
安卓系統的碎片整理在哪裡 發布:2022-12-07 09:01:39 瀏覽:474
oracle使用資料庫 發布:2022-12-07 09:01:33 瀏覽:846
黑洞演算法 發布:2022-12-07 09:00:51 瀏覽:803
JJY源碼 發布:2022-12-07 08:57:22 瀏覽:401
交換機訪問控制 發布:2022-12-07 08:55:27 瀏覽:646
微博怎麼上傳動圖 發布:2022-12-07 08:53:21 瀏覽:305