这两者中哪一个具有更高的性能:ODBC连接还是SQL连接?

时间:2014-05-29 17:29:25

标签: sql-server-2008 odbc sqlconnection

我有一个使用Fedex API集成的应用程序。应用程序使用ODBC连接来连接SQL Server。它的大数据并且需要很长时间来获取数据并执行操作。 如果我使用SQL连接,性能是否会有任何变化? 简单来说,两者中哪一个具有更快的性能?

ODBC:

      OdbcConnection Conn2 = new OdbcConnection();
      Conn2.ConnectionString = @"Dsn=Excel Files;dbq=" + lFileName + ";driverid=1046;maxbuffersize=2048;pagetimeout=5";

SQL:

      Sqlconnection con=new Sqlconnection ();
      con.ConnectionString ="Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
                             User ID=myDomain\myUsername;Password=myPassword;" 

1 个答案:

答案 0 :(得分:0)

我将假设您在询问用于ODBC的.NET Framework数据提供程序是否比使用本机SQL Server提供程序更快,而不是询问SQL Server的ODBC驱动程序是否比SQL Server的.NET提供程序。

通常,您可能会发现使用数据库的本机提供程序将比使用.NET ODBC提供程序更快,因为.NET ODBC提供程序正在包装ODBC驱动程序,因此需要对其进行本机调用ODBC驱动程序。此外,.NET ODBC提供程序上的一个函数调用可能映射到底层ODBC驱动程序中的多个调用,这将引入额外的开销。本机提供程序可以使用SQL Server有线协议直接写入线路,从而避免了ODBC驱动程序的开销。

与往常一样,您的里程可能会有所不同,您应该始终执行简单的测试来验证。