iNeedScissors61
iNeedScissors61

Reputation: 195

Running simple query through python: No results

I am trying to learn how to get Microsoft SQL query results using python and pyodbc module and have run into an issue in returning the same results using the same query that I use in Microsoft SQL Management Studio.

I've looked at the pyodbc documentation and set up my connection correctly... at least I'm not getting any connection errors at execution. The only issue seems to be returning the table data

import pyodbc
import sys
import csv

cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=<server>;DATABASE=<db>;UID=<uid>;PWD=<PWD>')

cursor = cnxn.cursor()

cursor.execute("""
                SELECT request_id

                From audit_request request

                where request.reception_datetime between '2019-08-18' and '2019-08-19' """)

rows = cursor.fetchall()

for row in cursor:
    print(row.request_id)


When I run the above code i get this in the python terminal window:

Process returned 0 (0x0)        execution time : 0.331 s
Press any key to continue . . .

I tried this same query in SQL Management Studio and it returns the results I am looking for. There must be something I'm missing as far as displaying the results using python.

Upvotes: 1

Views: 1182

Answers (1)

Joshua Schlichting
Joshua Schlichting

Reputation: 3450

You're not actually setting your cursor up to be used. You should have something like this before executing:

cursor = cnxn.cursor()

Learn more here: https://github.com/mkleehammer/pyodbc/wiki/Connection#cursor

Upvotes: 1

Related Questions