我有一个pandas数据帧,并通过以下代码写入SQL数据库:
df.to_sql(con=conn, name='temp', if_exists='replace',index=False)
它会抛出以下错误。我想知道这个错误意味着什么,为什么要显示它,以及如何修复它?:
追踪(最近一次通话): 文件“/home/ubuntu/workspace/2_distance.py”,第129行,in df.to_sql(con = conn,name ='temp',if_exists ='replace',index = False)
文件“/usr/local/lib/python2.7/dist-packages/pandas/core/generic.py”,第1362行,在to_sql中 chunksize = chunksize,dtype = dtype)
文件“/usr/local/lib/python2.7/dist-packages/pandas/io/sql.py”,第471行,在to_sql中 chunksize = chunksize,dtype = dtype) 在to_sql中输入文件“/usr/local/lib/python2.7/dist-packages/pandas/io/sql.py”,第1150行 table.create()
文件“/usr/local/lib/python2.7/dist-packages/pandas/io/sql.py”,第586行,在创建 如果self.exists():
文件“/usr/local/lib/python2.7/dist-packages/pandas/io/sql.py”,第574行,存在 return self.pd_sql.has_table(self.name,self.schema)
文件“/usr/local/lib/python2.7/dist-packages/pandas/io/sql.py”,第1178行,在has_table中 schema或self.meta.schema,
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”,第1534行,在run_callable中 return callable_(self,* args,** kwargs)
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/dialects/mysql/base.py”,第1700行,在has_table中 skip_user_error_events =真).execute(ST)
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”,第939行,执行中 return self._execute_text(object,multiparams,params)
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”,第1097行,在_execute_text中 声明,参数
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”,第1189行,在_execute_context中 上下文中)
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”,第1402行,在_handle_dbapi_exception中 exc_info
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/compat.py”,第203行,在raise_from_cause中 reraise(type(exception),exception,tb = exc_tb,cause = cause)
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py”,第1182行,在_execute_context中 上下文中)
文件“/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/default.py”,第470行,在do_execute中 cursor.execute(语句,参数)
文件“/usr/local/lib/python2.7/dist-packages/MySQLdb/cursors.py”,第205行,执行 self.errorhandler(self,exc,value)
文件“/usr/local/lib/python2.7/dist-packages/MySQLdb/connections.py”,第36行,在defaulterrorhandler中 提出错误类,错误值 sqlalchemy.exc.OperationalError:(_ mysql_exceptions.OperationalError)(1033,“文件中的信息不正确:'。/ pickaresk / temp.frm'”)[SQL:'DESCRIBE
temp
']