从 Access 数据库中检索和打印值

Retrieving and printing a value from an Access database

我正在尝试从 Access 数据库中检索并打印一行。我希望用户输入一个 ID 和一个字段,然后输入一个要打印的值。

到目前为止,这是我的代码...

import pypyodbc
import pandas

conn = pypyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\Users\Operator\Documents\T31_DB.accdb;')

cursor = conn.cursor()
cursor.execute('SELECT * FROM [TABLE_SIGNAL_ID]')

data = cursor.fetchall()
df = pandas.DataFrame(data)
dfi = df.set_index([0], drop=False)
ID = raw_input("enter signal ID:")
ID = int()

res = dfi.iloc[[ID]]

print res

有没有一种方法可以保留 Access 中的标题,以便我可以从行中提取特定项目?不想手动重命名列,因为列太多了。

感谢任何帮助。

我设法做到了,但是使用 SQL!

import pandas as pd
import pypyodbc
import sqlalchemy

conn = pypyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\Users\Operator\Documents\T31_DB.accdb;')

df = pd.read_sql('SELECT * FROM [TABLE_SIGNAL_ID]', conn)
dfi = df.set_index("signal_id", drop=False)

ID = raw_input("enter signal ID:")

res = dfi.loc[ID, ["signal_id", "abname", "system_id"]]

print res