PyODBC SQL代码卡在Python中,但在单独的函数中运行顺畅

时间:2015-11-12 17:26:54

标签: python sql pyodbc

我在Windows 7和pyodbc上使用Python 2.7 64位。数据库方面,它是Microsoft SQL Server 2008R2。

我正在尝试执行下面的一段SQL代码:

DECLARE 
     @Min INT
,    @Max INT

SELECT
     @Min = 50
,    @Max = 50000                      
update staging.tmp_python
     set Flag =  case 
                    when Value between @Min  and @Max  then 1
                    else 0
                 end

SQL代码在SQL中运行顺利,大约需要3秒钟。但是当我尝试在Python中运行它时,它需要很长时间,而且我认为它确实在做任何事情。

SQL_command = """
                  DECLARE 
                       @Min INT
                  ,    @Max INT

                  SELECT
                       @Min = 50
                  ,    @Max = 50000                       
                  update staging.tmp_python
                       set Flag =  case 
                                      when Value between @Min  and @Max  
                                      then 1
                                      else 0
                                   end
             """
conn = pyodbc.connect("driver={SQL Server};server= MyServer;database=MyDatabase;trusted_connection=true") 

cursor = conn.cursor()

cursor.execute(SQL_command)

如何解决此问题?

0 个答案:

没有答案