Питон 3.x: ошибка при подключении pyodbc sql server " нет атрибута 'выполнить"


Я продолжаю получать ошибку: "'builtin_function_or_method' объект не имеет атрибута 'execute' "я изначально думал, что жалоба была на функцию табличного значения в SQL Server, однако я вижу, что сообщение указывает на" execute", поэтому я не думаю, что refcur имеет execute defined. Вот как выглядит моя строка подключения:

    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 для того, что доступно. Кто-нибудь знает, почему это происходит?

Введите описание изображения здесь

1 3

1 ответ:

Вы не вызываете cursor, вы просто возвращаете ссылку на эту функцию-член и сохраняете ее в refcur. Для того чтобы вызвать его (и фактически создать курсор), нужно добавить скобки:

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