用Pandas读取Access表的最简单方法是?

问题描述

我有一个访问数据库名称DB_IMPORT_2020.accdb。它仅包含一个名为DB_IMPORT_2020_PM的表。我一直在努力地尝试将该表导入Pandas。 到目前为止,我一直在做的是:

# define components of our connection string
driver = '{Microsoft Access Driver (*.mdb,*.accdb)}'
filepath = r"C:\Users\corra\Desktop\DB_IMPORT_2020.accdb"

# create a connection to the database
cnxn = pyodbc.connect(driver = driver,dbq = filepath,autocommit = True)

crsr = cnxn.cursor()

# define the components of a query
table_name = 'DB_IMPORT_2020_PM'

# define query

query = "SELECT * FROM {}".format(table_name)

# execute the query

crsr.execute(query)

data = crsr.fetchall()

df = pd.DataFrame(data)

然后我遇到一个熊猫数据框,其中只有一列,每一行都有一个列表的情况。

0
________________________________________________________
0   [86232,2019-09-12,INTERNET,...,N ]
1   [86233,M ]
2   [86234,MEZZO LIBERO,Q ]
3   ...

我觉得这不是正确的方法,而且过于复杂。 有谁知道一种更简单的方法来读取Access with Pandas表中的数据?

这是我通过data = crsr.fetchall()获得的列表

[(86232,datetime.datetime(2019,9,12,0),'INTERNET','A.M Web','Brand_SMX',0.0,'gen','20_FCST','OnLine','dipendente s','Low Rev.','STX','A.M','STORICI','TIER 1',1.0,'ALIMENTARI','04_SRF','SMX','ALTRI','STC','Reservation','Off + On','Online_Res',None,None),(86233,'feb','A. M',(86234,'MEZZO LIBERO','S ITALIA SRL','S ELECTRONICS','OffLine','BO / CI','S Italia Srl','S','BEN BOT','INTERCx','INFORMATICA/FOTOGRAFIA','Offline_Res','INTX',...]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)