Как перенаправить вывод запроса SQL в текстовый файл, используя Python - PullRequest
0 голосов
/ 27 февраля 2020

Перенаправление SQL запроса вывода в текстовый файл с использованием Python и модуля pyodb c.

import pyodbc
import os
import sys
conn = pyodbc.connect('Driver={SQL Server};'
                      'Server=win-intrst-srv;'
                      'Database=Interests_db;'
                      'Trusted_Connection=yes;')

cursor = conn.cursor()
count1 = cursor.execute("select count(*) from MissedEvents  where  TenantId > 10000 and remarks like 'Mandatory%' AND RowCreatedDate >= dateadd(hh, -2, getdate())")
print(count1.fetchone()[0]) # This prints out no of rows updated in last 1 hour.

f = open('c:\MonitoringStats\staticentry.txt','a')
f.write('\n' + 'Mandatory field missing count:'+ count1.fetchone()[0])
file.close()

Но происходит сбой с ошибкой:

Тип ошибка: объект другого типа не может быть подписан

Может кто-нибудь помочь мне перенаправить вывод запроса SQL в файл?

1 Ответ

1 голос
/ 27 февраля 2020

Поскольку вы уже получаете свой результат при печати, вы не можете получить этот же результат снова. Таким образом, вы должны присвоить его переменной:

count = count1.fetchone()[0]

Затем используйте его как хотите:

print(count)
...
f.write('\n' + 'Mandatory field missing count:'+ str(count))
...