pyodbc を使用して SQL サーバーからデータを取得し、Python を使用してテーブルに出力しようとしています。ただし、列の各行の実際のデータ値ではなく、列名とデータ型などしか取得できないようです。
基本的に、サーバー データを取得してテーブルに表示する Excel シートを複製しようとしています。サーバーへの接続に問題はありませんが、テーブルに入る実際のデータが見つからないようです。
これが私のコードの例です:
import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=SQLSRV01;DATABASE=DATABASE;UID=USER;PWD=PASSWORD')
cursor = cnxn.cursor()
cursor.execute("SELECT * FROM sys.tables")
tables = cursor.fetchall()
#cursor.execute("SELECT WORK_ORDER.TYPE,WORK_ORDER.STATUS, WORK_ORDER.BASE_ID, WORK_ORDER.LOT_ID FROM WORK_ORDER")
for row in cursor.columns(table='WORK_ORDER'):
print row.column_name
for field in row:
print field
ただし、この結果は、テーブル名、列名、およびいくつかの整数、「なし」など、私にとって興味のないものだけを提供します。
STATUS_EFF_DATE
DATABASE
dbo
WORK_ORDER
STATUS_EFF_DATE
93
datetime
23
16
3
None
0
None
None
9
3
None
80
NO
61
そのため、テーブルを埋めるための値をどこで取得できるかはよくわかりません。table='WORK_ORDER' にあるはずですが、別のテーブル名の下にある可能性はありますか? 欠落しているデータを印刷する方法はありますか?
アドバイスや提案をいただければ幸いです。