OPENROWSET OLE DB 数据源读取
-- 语法
OPENROWSET ( { 'provider_name' , { 'datasource' ; 'user_id' ; 'password' | 'provider_string' } , { [ catalog. ] [ schema. ] object | 'query' } | BULK 'data_file' , { FORMATFILE = 'format_file_path' [ <bulk_options> ] | SINGLE_BLOB | SINGLE_CLOB | SINGLE_NCLOB } } ) <bulk_options> ::= [ , CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | 'code_page' } ] [ , ERRORFILE = 'file_name' ] [ , FIRSTROW = first_row ] [ , LASTROW = last_row ] [ , MAXERRORS = maximum_errors ] [ , ROWS_PER_BATCH = rows_per_batch ] [ , ORDER ( { column [ ASC | DESC ] } [ ,...n ] ) [ UNIQUE ]
示例
A. 将 OPENROWSET 与 SELECT 和 SQL Server Native Client OLE DB 访问接口一起使用
以下示例使用 SQL Server Native Client OLE DB 访问接口访问 HumanResources.Department
表,该表位于远程服务器 Seattle1
上的 AdventureWorks2008R2 数据库中。(使用 SQLNCLI 并且 SQL Server 将重定向到 SQL Server Native Client OLE DB 访问接口的最新版本。)使用 SELECT
语句定义返回的行集。访问接口字符串包含 Server
和 Trusted_Connection
关键字。这些关键字由 SQL Server Native Client OLE DB 访问接口识别。
B. 使用 Microsoft OLE DB Provider for Jet
以下示例通过 Microsoft OLE DB Provider for Jet 访问 Microsoft Access Northwind
数据库中的 Customers
表。
注意: |
---|
该示例假定已经安装了 Access。若要运行该示例,则必须安装 Northwind 数据库。有关如何安装 Northwind 数据库的详细信息,请参阅下载 Northwind 和 pubs 示例数据库。 |
C. 使用 OPENROWSET 和 INNER JOIN 中的另一个表
以下示例从 SQL Server Northwind
数据库的本地实例中的 Customers
表以及存储在同一计算机上的 Access Northwind
数据库中的 Orders
表选择所有数据。
注意: |
---|
该示例假定已经安装了 Access。若要运行该示例,则必须安装 Northwind 数据库。有关如何安装 Northwind 数据库的详细信息,请参阅下载 Northwind 和 pubs 示例数据库。 |
D. 使用 OPENROWSET 将文件数据大容量插入 varbinary(max) 列中
以下示例创建一个用于演示的小型表,并将名为 Text1.txt
的文件(位于 C:
根目录)中的文件数据插入 varbinary(max)
列中。
E. 将 OPENROWSET BULK 访问接口用于格式化文件以检索文本文件中的行
以下示例使用格式化文件检索用制表符分隔的文本文件 values.txt
中的行,该文件包含下列数据:
格式化文件 values.fmt
说明 values.txt
中的列:
9.0
2
1 SQLCHAR 0 10 "\t" 1 ID SQL_Latin1_General_Cp437_BIN
2 SQLCHAR 0 40 "\r\n" 2 Description SQL_Latin1_General_Cp437_BIN
下面的语句是检索此数据的查询: