Welcome

首页 / 数据库 / SQLServer / SQL Server跨服务器连接的多种方法

SQL Server跨服务器连接的多种方法2007-12-27本文对SQL Server跨服务器连接的方式进行总结。

1、OPENDATASOURCE

在SQL文中直接用此语句打开数据库示例:

OPENDATASOURCE(
"SQLOLEDB","Data Source=TQDBSV001
;User ID=fish;Password=2312").RackDB.dbo.CS

此方式较为简单,但存在弊端就是速度很慢。

2、OPENROWSET

包括从 OLE DB 资料来源存取远端资料需要的所有连线资讯。这个方法是在连结伺服器存取资料表的替代方法,而且是使用 OLE DB 连线与存取远端资料的一次、特定的方法。OPENROWSET 函数可以在查询的 FROM 子句中当作资料表名称来参考。根据 OLE DB Provider 的能力,OPENROWSET 函数也可以当作 Insert、Update 或 Delete 陈述式的目标资料表来参考。虽然查询可能会传回多个结果集,OPENROWSET 只传回第一个结果集。语法:

OPENROWSET ( "provider_name"
, { "datasource" ; "user_id" ; "password"
| "provider_string" }
, { [ catalog.] [ schema.] object
| "query" }

参数:

"provider_name":代表登录中指定的 OLE DB Provider 的亲和名称之字元字串。

"provider_name" 没有预设值。

"datasource":是对应到特殊 OLE DB 资料来源的字串常数。

"datasource" 是要传送到提供者 IDBProperties 介面以初始化提供者的 DBPROP_INIT_DATASOURCE 属性。一般而言,此字串包括资料库档案名称、资料库伺服器名称或提供者了解并用以寻找资料库的名称。

"user_id":是要传送到指定的 OLE DB Provider 的使用者名称字串常数。user_id 指定连线的安全性内容且以 DBPROP_AUTH_USERID 属性传送以初始化提供者。