SQL Server客户端工具到底使用的是哪个provider呢?
转载自:http://blogs.msdn.com/b/apgcdsd/archive/2013/01/10/sql-server-provider.aspx
我们经常困惑的是,我们一些常用的SQL Server客户端工具,如SQLCMD, OSQL, ISQL, SQL Server Management Studio
到底是用ODBC, OLEDB还是System.Data.Sqlclient? 不了解工具用的是哪个provider, 则有时候会比较困惑。
如:
这篇文档讲sqlcmd.exe 2012版本用的是OLEDB http://msdn.microsoft.com/en-us/library/ms190611.aspx
另外篇文档讲sqlcmd.exe 2012版本用的事ODBC http://technet.microsoft.com/en-us/library/ms162773.aspx
哪篇MSDN文档是对的,哪篇是错的?
通过对各个客户端工具进行debugging,我们能比较容易的了解到每个工具使用了provider。
下面是不同的工具,在不同版本下使用Data Access技术的列表,仅供参考
比较值得注意的是,从SQL Server 2008到SQL Server 2012, SQLCMD.EXE从OLEDB迁移到了ODBC。