python - py脚本从mysql数据库写入xlsx文件

标签 python mysql

我当前正在运行此脚本以从 mysql 写入 xlsx 文件。然而,我的列返回为 0。 我是不是用错了电话

> 对于 c,枚举(行)中的列:

请参阅下面的完整脚本:

import MySQLdb
from xlsxwriter.workbook import Workbook

user = '' # your username
passwd = '' # your password
host = '' # your host
db = '' # database where your table is stored
table = '' # table you want to save

con = MySQLdb.connect(user=user, passwd=passwd, host=host, db=db)
cursor = con.cursor()

query = "SELECT * FROM %s;" % table
cursor.execute(query)

workbook = Workbook('outfile.xlsx')
sheet = workbook.add_worksheet()
for r, row in enumerate(cursor.fetchall()):
for c, col in enumerate(row):
    sheet.write(r, c, col)

我预计这些列会返回值,但它们会返回零。

最佳答案

您的代码似乎没有正确缩进。第二个 for 循环不在第一个 for 循环内。试试这个:

for r, row in enumerate(cursor.fetchall()):
    for c, col in enumerate(row):
        sheet.write(r, c, col)

此外,如果您要写入大量数据而没有任何特殊的单元格特定格式,则应该考虑使用 Pandas。

来源:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_excel.html

关于python - py脚本从mysql数据库写入xlsx文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56028933/

相关文章:

mysql - mysql存储过程编辑器

mysql - Laravel 5.1 使用 Controller 和模型使用 SOAP wsdl 服务

c# - linq2db:无法为表生成 POCO

python 3.2.3 : Socket takes longer to timeout than it should?

python - 有没有办法在 python 中的 KeyboardInterrupt 上永不退出?

python - 在 Pandas 中绘制 fill_between()

javascript - 通过 Django 将 Python 数据传递给 JavaScript

python - 仅检测正则表达式中的数字

mysql - 从机错误(handler error HA_ERR_LOCK_WAIT_TIMEOUT)及其影响

java - 无法从 Elastic Beanstalk 上的 Java 应用程序连接到 MySQL Amazon RDS,java.sql.SQLException : No suitable driver