SQLServer 跨庫查詢完成辦法。本站提示廣大學習愛好者:(SQLServer 跨庫查詢完成辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是SQLServer 跨庫查詢完成辦法正文
本文給出一條 SQL 語句用於展現在統一名辦事器上,分歧的數據庫間查詢,留意以後銜接用戶要對兩個庫都有權限
SQL Server 中 SQL 語句中對象的完全表達式是:
[DatabaseServer].[DatabaseName].[DatabaseSchema].[DatabaseObject]
本文給出一條 SQL 語句用於展現在統一名辦事器上,分歧的數據庫間查詢,留意以後銜接用戶要對兩個庫都有權限。
select *
from CfteaDb1.dbo.CfteaTable1 inner join CfteaDb2.dbo.CfteaTable2
on CfteaDb1.dbo.CfteaTable1.Id=CfteaDb2.dbo.CfteaTable2.Id
以上在 SQL Server 2008 R2 的 Management Studio 中測試勝利。
上面是一些彌補材料
不應用鏈接的辦事器名,而供給特別的銜接信息,並將其作為四部門對象名的一部門。
語法
OPENDATASOURCE ( provider_name, init_string )
參數
provider_name
注冊為用於拜訪數據源的 OLE DB 供給法式的 PROGID 的稱號。provider_name 的數據類型為 char,沒有默許值。
init_string
銜接字符串,這些字符串將要傳遞給目的供給法式的 IDataInitialize 接口。供給法式字符串語法是以症結字值對為基本的,這些症結字值對由分號離隔,例如:"keyword1=value; keyword2=value."
在 Microsoft® Data Access SDK 中界說了根本語法。有關所支撐的特定症結字值對的信息,請拜見供給法式中的文檔。下表列出 init_string 參數中最經常使用的症結字。
症結字 |
OLE DB 屬性 |
有用值和描寫 |
數據源
DBPROP_INIT_DATASOURCE
要銜接的數據源的稱號。分歧的供給法式用分歧的辦法對此停止說明。關於 SQL Server OLE DB 供給法式來講,這會指明辦事器的稱號。關於 Jet OLE DB 供給法式來講,這會指明 .mdb 文件或 .xls 文件的完全途徑。
地位
DBPROP_INIT_LOCATION
要銜接的數據庫的地位。
擴大屬性
DBPROP_INIT_PROVIDERSTRING
供給法式特定的銜接字符串。
銜接超時
DBPROP_INIT_TIMEOUT
超時價,在該超時價後,銜接測驗考試將掉敗。
用戶 ID
DBPROP_AUTH_USERID
用於該銜接的用戶 ID。
暗碼
DBPROP_AUTH_PASSWORD
用於該銜接的暗碼。
目次
DBPROP_INIT_CATALOG
銜接到數據源時的初始或默許的目次稱號。
正文
OPENDATASOURCE 函數可以在可以或許應用鏈接辦事器名的雷同 Transact-SQL 語法地位中應用。是以,便可以將 OPENDATASOURCE 用作四部門稱號的第一部門,該稱號指的是 SELECT、INSERT、UPDATE 或 DELETE 語句中的表或視圖的稱號;或許指的是 EXECUTE 語句中的長途存儲進程。當履行長途存儲進程時,OPENDATASOURCE 應當指的是另外一個 SQL Server。OPENDATASOURCE 不接收參數變量。
與 OPENROWSET 函數相似,OPENDATASOURCE 應當只援用那些不常常拜訪的 OLE DB 數據源。關於拜訪次數稍多的任何數據源,請為它們界說鏈接的辦事器。不管 OPENDATASOURCE 照樣 OPENROWSET 都不克不及供給鏈接的辦事器界說的全體功效,例如,平安治理和查詢目次信息的才能。每次挪用 OPENDATASOURCE 時,都必需供給一切的銜接信息(包含暗碼)。
示例
上面的示例拜訪來自某個表的數據,該表在 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:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions