科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道细化解析:怎样使用特殊名称标识数据源

细化解析:怎样使用特殊名称标识数据源

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

当引用OLE DB数据源的频率不够高,尚不足以保证配置链接服务器时,可使用特殊名称作为表引用。在Server 2000 中,可以使用OPENROWSET和 OPENDATASOURCE函数提供特殊名称。

作者:赛迪网 Alice 来源:天新网 2008年3月27日

关键字: Mssql SQL SQL Server 数据库

  • 评论
  • 分享微博
  • 分享邮件

当引用 OLE DB 数据源的频率不够高,尚不足以保证配置链接服务器时,可使用特殊名称作为表引用。在 Microsoft® SQL Server™ 2000 中,可以使用 OPENROWSET 和 OPENDATASOURCE 函数提供特殊名称。

OPENROWSET 和 OPENDATASOURCE 函数都提供特殊连接信息。可以使用这些函数指定访问 OLE DB 数据源所需的全部信息。但是,不可以将 OPENROWSET 和 OPENDATASOURCE 函数互换。

当 OLE DB 提供程序通过指定表(或视图)名称或通过指定返回行集的查询返回行集时,可以使用 OPENROWSET 函数。而 OPENROWSET 函数则可以在 Transact-SQL 语句中代替表或视图名称。

本示例使用特殊名称从 Microsoft Access 版本的 Northwind 示例数据库中检索数据。

SELECT *
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'c:\MSOffice\Access\Samples\northwind.mdb';'admin';'', 
Customers)

仅当提供程序表现行集并 使用 catalog.schema.object 注释时,才可以使用 OPENDATASOURCE。该函数可以在能够使用链接服务器名的 Transact-SQL 语法位置中使用。即,在 catalog.schema.object 注释中,OPENDATASOURCE 可以用作表或视图名称(四部分)的第一部分。

-- SELECT from a table on another instance of SQL Server.
SELECT *
FROM OPENDATASOURCE(
'SQLOLEDB',
'Data Source=ServerName;User ID=MyUID;Password=MyPass'
).Northwind.dbo.Categories

只有在特殊情况下(当不可能配置永久链接服务器时)访问外部数据时,才应使用 OPENROWSET 和 OPENDATASOURCE。这两个函数不提供链接服务器中的所有可用功能,如管理登录映射、查询链接服务器元数据的能力和配置各种连接设置(如超时值)的能力。

OPENROWSET 和 OPENDATASOURCE 的参数不支持变量。必须将它们指定为字符串字面值。如果需要将变量作为参数传递到这两个函数中,则可以使用 EXEC 语句动态地构造并执行包含这些变量的查询字符。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章