python - Pandas 数据帧 to_sql 数据长度超过 65536 个字符

标签 python mysql sql pandas dataframe

我有一个 Pandas 数据框,其中某些列的值超过 65536 个字符。当我尝试使用 df.to_sql(con=engine, name=table_name, if_exists='replace', index=False) 将数据导出到 MySQL 时,它们被截断为 65536 个字符。

如果列的值超过 65536,是否有办法自动将列转换为 LONGTEXT 或 BLOB(而不是 TEXT),以便表内容不会被截断?

最佳答案

这可能是一个解决方法。唯一的事情是您需要拥有需要转换为 LONGTEXT 的列的列表。

from sqlalchemy.dialects.mysql import LONGTEXT
dtype = {
    "long_column_1": LONGTEXT,
    "long_column_2": LONGTEXT
}
pdf.to_sql(con=engine, name=table_name, if_exists='replace', index=False, dtype=dtype)

关于python - Pandas 数据帧 to_sql 数据长度超过 65536 个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56962051/

相关文章:

python - 如何模拟掷骰子

python - 数据框组合

python - 更有效地重新格式化具有不等量空格的文本文件,然后转换为 csv

c# - DataGridView 图像列引发参数异常 : Parameter not valid

mysql - 使用 ORDER BY 显示两个不同表中的两个不同列

sql - 我如何编译sql?

python - 我应该如何在 Google App Engine 项目中导入 django.middleware 类?

mysql - 检查 MySQL 中的无效 UPC

显示分层数据的 SQL 查询

sql - 如何使用嵌套关联查询 STI 驱动的模型?