我想從使用pyodbc的SQL服務器中檢索數據並使用Python將其打印在表中。但是,我似乎只能檢索列名稱和數據類型以及類似的東西,而不是列的每一行中的實際數據值。從SQL中檢索數據使用pyodbc
基本上我試圖複製一個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
然而這樣做的結果只是給了我的東西,如表名,列名,有的整數和'無的之類的東西是不是活得t我感興趣的:
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'中,但可以在不同的表名下嗎?有沒有辦法打印我剛剛丟失的數據?
任何意見或建議將不勝感激。
爲什麼不直接運行'cursor.execute('select * from WORK_TABLE')'? – 2012-07-12 11:48:05