python - 如何使用 PYTHON 将 mySQL 表导出为 CSV 文件

标签 python sql csv

我有一个很小的表,有 5 列(包括主键),我正在尝试将数据导出到 CSV 文件中

import csv
with DbManager(#MY DATA BASE INFO) as db:
            SQLview = 'SELECT * FROM mytable;'
            db.cursor.execute(SQLview)
            writer = csv.writer(db)
            writer.writerow([ i[0] for i in cursor.description ]) 
            writer.writerows(cursor.fetchall())

但是我收到错误

writer = csv.writer(db)
TypeError: argument 1 must have a "write" method

TIA 寻求任何帮助,或者您能否为我指明正确的方向:)

最佳答案

您需要打开一个文件来输出数据:

with DbManager(#MY DATA BASE INFO) as db:
    SQLview = 'SELECT * FROM mytable;'
    cursor = db.cursor()
    cursor.execute(SQLview)
    with open('output.csv', 'w') as csvfile:
        writer = csv.writer(csvfile)
        writer.writerow([ i[0] for i in cursor.description ]) 
        writer.writerows(cursor.fetchall())

关于python - 如何使用 PYTHON 将 mySQL 表导出为 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45771050/

相关文章:

python - 比较 pandas 数据框中的两个字符串并显示差异

mysql - 加载文件中的数据导入不起作用,其他主题均无帮助

python - 返回第一个元素 python

python - 比较并计算python列表中的稀疏数组

python - 在 Python 项目中管理资源

javascript - 访问 D3 直方图箱中对象的属性

python - 在 csv.writer 中添加空格作为分隔符

.net - 最好的独立于数据库的 SQL DDL 实用程序?

sql - 使用 string_split 从多列创建行

使用 left() 函数时 SQL CASE 失败