Python 3.x:错误pyodbc sql服务器连接“无属性”执行“

问题描述:

我不断收到错误:”'builtin_function_or_method'对象没有属性'执行'“我原本以为投诉是在表值函数中然而,SQL Server,我看到消息指向“执行”,所以我认为refcur已经执行定义。以下是我的连接字符串的样子:Python 3.x:错误pyodbc sql服务器连接“无属性”执行“

conn = pyodbc.connect("Driver={SQL Server};" 
         "Server=myserver;" 
         "Database=mydatabase;" 
         "Trusted_Connection=yes;" 
         "autocommit=True;") 

    refcur = conn.cursor 
    sql = "exec myschema.mystoredproc @TVPobject=?" 
    refcur.execute(sql,this_object) 

我附加了图像以显示我在intellisense中看到的可用内容。有谁知道为什么会发生这种情况?

enter image description here

你是不是叫cursor,你只是回到该成员函数的引用,并将其存储在refcur。为了调用它(实际上创建一个光标),你需要添加括号:

refcur = conn.cursor() 
# Here -------------^ 
+1

现在,这必须是我曾发布的最坏的东西 - 但我花了太多时间在它上面。我甚至没有注意到丢失的括号。我会离开这张贴。我确信我不是唯一一个因为这个原因而花费(或将花费)时间来追逐这个错误的人! :) @Mureinik,非常感谢! – plditallo