On Wed, Mar 4, 2020 at 3:20 PM Larry Martell <larry.mart...@gmail.com> wrote:
>
> I have some Python code that uses pyodbc to talk to a SQL Server database. In 
> that code I do an  INSERT INTO xxxx SELECT * FROM yyyy
>
> That query takes around 3 times longer to run when invoked from Python with 
> pyodbc than when run with direct SQL.
>
> On one system we have 1,667 rows and the timings are direct sql 1.7s pyodbc 
> 4.6s. On another system we have 15,000 rows and it's 15s vs 48s
>
> In both cases, I am running from the same machine over the same network 
> talking to the same SQL Server.
>
> The only difference I can find is the driver. When I run the direct SQL the 
> client I have uses the driver net.sourceforge.jtds.jdbc.Driver jtds12.jar 
> where as pyodbc uses {ODBC Driver 17 for SQL Server}.
>
> Could this be the cause of the difference? Is there a different driver I can 
> use with pyodbc that would be faster?

I discovered the issue is that I am selecting from a view. When
selecting from a table the time is the same. So what about a view
would make it take longer when accessed from pyodbc?
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to