SQL Server客戶端工具到底使用的是哪個provider呢?

我們經(jīng)常困惑的是,我們一些常用的sql server客戶端工具,如sqlcmd, osql, isql, sql server management studio到底是用odbc, oledb還是system.data.sqlclient? 不了解工具用的是哪個provider, 則有時候會比較困惑。如: 這篇文檔講sqlcmd.exe 2012版本用的是

我們經(jīng)常困惑的是,我們一些常用的sql server客戶端工具,如sqlcmd, osql, isql, sql server management studio到底是用odbc, oledb還是system.data.sqlclient? 不了解工具用的是哪個provider, 則有時候會比較困惑。如:

這篇文檔講sqlcmd.exe 2012版本用的是OLEDB

另外篇文檔講sqlcmd.exe 2012版本用的事ODBC

哪篇MSDN文檔是對的,哪篇是錯的?

通過對各個客戶端工具進行debugging,我們能比較容易的了解到每個工具使用了provider。下面是不同的工具,在不同版本下使用Data Access技術(shù)的列表,僅供參考。

?

Isql.exe

Osql.exe

Sqlcmd

QA

Sqlwb.exe

Ssms.exe

SQL Server 2000

DB-Library

Ntwdblib.DLL

ODBC

sqlsrv32.dll

N.A.

ODBC

Sqlsrv32.dll

N.A.

N.A.

SQL Server 2005

N.A.

ODBC

Sqlncli.dll

OLEDB

Sqlncli.dll

N.A.

System.Data.
SqlClient

.NET Framework
2.0

N.A.

SQL Server 2008

N.A.

ODBC

Sqlncli10.dll

OLEDB

Sqlncli10.dll

N.A.

N.A.

System.Data.
SqlClient

.NET Framework
3.5 SP1

SQL Server 2008 R2

N.A.

ODBC

Sqlncli10.dll

OLEDB

Sqlncli10.dll

N.A.

N.A.

System.Data.
SqlClient

.NET Framework
3.5 SP1

SQL Server 2012

N.A.

ODBC

Sqlncli11.dll

ODBC

Sqlncli11.dll

N.A.

N.A.

System.Data.
sqlClient

.NET Framework 4.0

比較值得注意的是,從SQL Server 2008到SQL Server 2012, SQLCMD.EXE從OLEDB遷移到了ODBC。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊13 分享