我是python的新手。我无法弄清楚如何将sql server表行写入输出文件。我可以在屏幕上显示但不能将其写入文件。
import pyodbc
f.open(‘c:\python27\out.txt’,w)
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=localhost;DATABASE=vzw;trusted_connection=True')
cursor = cnxn.cursor()
cursor.execute ("select * from vzw.dbo.threcord")
row = cursor.fetchall()
print row # displays row on screen
f.write #what goes here to indicate the displayed row?
答案 0 :(得分:1)
您可以使用csv
module输出以逗号分隔的文件。
import pyodbc
import csv
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=localhost;DATABASE=vzw;trusted_connection=True')
cursor = cnxn.cursor()
cursor.execute("select * from vzw.dbo.threcord")
row = cursor.fetchall()
with open(r"c:\python27\out.txt", "w") as f:
csv.writer(f).writerows(row)
关于我从您的代码中发生了哪些变化的一些注意事项:
with
语句打开文件。r
,因为\
是转义字符。