首页 > 解决方案 > 使用列将表访问到 CSV

问题描述

我想将 MS Access 表转换为 CSV。

MS访问表:

在此处输入图像描述

蟒蛇 2.7:

conn_string = r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=' + file1 + ';'
conn = pyodbc.connect(conn_string)
cursor = conn.cursor()

cursor.execute('SELECT * FROM EMP')

with open(csvfile, 'wb') as f:
    writer = csv.writer(f)
    writer.writerows([i[0] for i in cursor.description])
    writer.writerows(cursor)

cursor.close()
conn.close()

但得到意想不到的结果:

在此处输入图像描述

标签: pythonpython-2.7

解决方案


不要将列值写为行,这就是将它们的字符扩展为单个单元格的原因。要编写标题,请使用:

writer.writerow([i[0] for i in cursor.description])

然后用于writer.writerows()写入实际数据。


推荐阅读