sqlserver OpenRowSet 對應的三種資料庫驅動

來源:互聯網
上載者:User

標籤:des   blog   http   ar   io   os   使用   sp   for   

在使用sqlserver資料庫的OpenRowSet函數時,會遇到三種驅動方式:

1. MSDASQL驅動
SELECT TOP 10 *
FROM OPENROWSET(‘MSDASQL‘, ‘DRIVER={SQL Server};SERVER=xxx;UID=xx;PWD=xxx;‘, ‘select * from AdventureWorks.HumanResources.Employee‘)

2. SQLNCLI驅動
SELECT TOP 10 *
FROM OPENROWSET(‘SQLNCLI‘, ‘SERVER=xxx;UID=xx;PWD=xxxxx;‘, ‘select * from AdventureWorks.HumanResources.Employee‘)

3. SQLOLEDB驅動
SELECT TOP 10 *
FROM OpenRowSet(‘SQLOLEDB‘, ‘xxx‘; ‘xx‘; ‘xxx‘, AdventureWorks.HumanResources.Employee)

先看一下定義

MSDASQL:Microsoft OLE DB Provider for ODBC Drivers

允許在 OLEDB 和 ADO(它在內部使用 OLEDB)上構建的應用程式通過 ODBC 驅動程式訪問資料來源的技術。
MSDASQL 是用於串連到 ODBC(而不是資料庫)的 OLEDB 提供者。

SQLOLEDB :Microsoft OLE DB Provider for SQL Server,可以看出來SQLOLEDB是串連到資料庫sqlserver,而不是ODBC驅動

SQLNCLI10(SQLNCLI):SQL Server Native Client 10.0

SQL Server Native Client的定義:

SQL Server Native Client 是在 SQL Server 2005 中引入的用於 OLE DB 和 ODBC 的獨立資料訪問API (API)。SQL Server Native Client 將 SQL OLE DB 提供者和 SQL ODBC 驅動程式組合成一個本機動態連結程式庫 (DLL)。為了利用在 SQL Server 2005以及以上的版本的新功能,比如多個活動結果集 (MARS)、查詢通知、使用者定義型別 (UDT) 或新的 xml 資料類型,那些使用 ActiveX Data Objects (ADO) 的現有應用程式應當使用 SQL Server Native Client OLE DB 提供者作為其資料提供者。

如果不需要使用在 SQL Server 2005 及其以後的版本中引入的任何新功能,則不需要使用 SQL Server Native Client OLE DB 提供者;您可以繼續使用當前資料提供者(通常是 SQLOLEDB)。如果要增強現有應用程式的功能,並且需要使用在 SQL Server 2005 及其以後的版本中引入的新功能,則應當使用 SQL Server Native Client OLE DB 提供者。

附上 OPENROWSET 文法格式

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 ]

參照:http://www.cnblogs.com/w-y-f/archive/2012/05/07/2488474.html

sqlserver OpenRowSet 對應的三種資料庫驅動

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.