优秀个人网站推荐/营销推广是什么意思
SQL Server客户端工具到底使用的是哪个provider呢?
01/09/2013
2 分钟可看完
本文内容
我们经常困惑的是,我们一些常用的SQL Server客户端工具,如SQLCMD, OSQL, ISQL, SQL Server Management Studio到底是用ODBC, OLEDB还是System.Data.Sqlclient? 不了解工具用的是哪个provider, 则有时候会比较困惑。如:
哪篇MSDN文档是对的,哪篇是错的?
通过对各个客户端工具进行debugging,我们能比较容易的了解到每个工具使用了provider。下面是不同的工具,在不同版本下使用Data Access技术的列表,仅供参考。
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。