我正在尝试使用mysql.connector接口、炼金术和熊猫。我可以创建数据库,设置一些表,并分配主键。我刚到了需要将一个较大的表放入数据库的地步。我尝试以下操作:
full_gencode_df.to_sql(name='full_gencode_df', con=engine, index=True)
这会产生以下错误(为水平滚动道歉,这是一个长错误,甚至被截断):
sqlalchemy.exc.OperationalError: (mysql.connector.errors.OperationalError) 1153 (08S01): Got a packet bigger than 'max_allowed_packet' bytes [SQL: u'INSERT INTO full_gencode_df (`index`, ccdsid, end, exon_id, exon_number, ....
在四处寻找解决方案之后,我可以看出这是SQL端的错误,而不是Python端的错误,解决方案是更改max_allowed_packet
以允许将较大的数据包插入数据库。不幸的是,我在数据库服务器上没有SUPER
特权,我不知道我得到它的机会有多大。你知道吗
我找不到不涉及SUPER
特权的解决方法。在Python端或SQL端有解决方法吗?在append
模式下尝试将表分块并写入会有帮助吗?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐