Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django.db.utils.InterfaceError:(0,';';)_Python_Mysql_Django_Pymysql - Fatal编程技术网

Python django.db.utils.InterfaceError:(0,';';)

Python django.db.utils.InterfaceError:(0,';';),python,mysql,django,pymysql,Python,Mysql,Django,Pymysql,我最近在开发的工具中实现了django。在做一些测试时,我得到了一个django.db.utils.InterfaceError:(0,,)错误。 我已经读到这可能是一个全局游标问题,但是我只是通过django进行查询,让它处理游标 基本上,我有关于化合物的信息,在工具执行的几个时刻,我将这些信息保存到mySQL 这段特定的代码将执行几次(到目前为止似乎工作正常),然后在执行结束时执行最后一次(全局保存)。正是在这个全局保存中,我得到了上述错误。 这个全局保存只是对所有收集的化合物进行迭代并保存

我最近在开发的工具中实现了django。在做一些测试时,我得到了一个django.db.utils.InterfaceError:(0,,)错误。 我已经读到这可能是一个全局游标问题,但是我只是通过django进行查询,让它处理游标

基本上,我有关于化合物的信息,在工具执行的几个时刻,我将这些信息保存到mySQL

这段特定的代码将执行几次(到目前为止似乎工作正常),然后在执行结束时执行最后一次(全局保存)。正是在这个全局保存中,我得到了上述错误。 这个全局保存只是对所有收集的化合物进行迭代并保存它们

我能做些什么来解决这个错误

def save_to_SQL_db(self):
    #####COMPOUND#####
    if not self.sql_key:
        cpd_django=Compound_db(cpd_level=self.get_cpd_level(),\
                               chemical_formula=self.get_Chemical_formula(),\
                               smiles=self.get_SMILES())
    else:
        cpd_django=Compound_db.objects.get(pk=self.sql_key)
        cpd_django.cpd_level=self.get_cpd_level()
        cpd_django.chemical_formula=self.get_Chemical_formula()
        cpd_django.smiles=self.get_SMILES()
    cpd_django.save()
错误:

回溯(最近一次调用上次):文件 “user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\utils.py”, 第85行,in_执行 返回self.cursor.execute(sql,params)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\mysql\base.py”, 执行中的第71行 返回self.cursor.execute(query,args)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\pymysql\cursors.py”, 执行中的第170行 result=self.\u查询(query)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\pymysql\cursors.py”, 第328行,在查询中 conn.query(q)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\pymysql\connections.py”, 查询中的第515行 self.\u execute\u命令(command.COM\u QUERY,sql)文件“user\AppData\Local\Programs\Python37-32\lib\site packages\pymysql\connections.py”, 第745行,in_执行_命令 raise err.InterfaceError(“(0,”)”)pymysql.err.InterfaceError:(0,”)

上述异常是以下异常的直接原因:

回溯(最近一次调用上次):文件 “MyProject/Query.py”,第1900行,在 文件 “MyProject/Query.py”,第1803行,在 多个查询文件 “MyProject/Query.py”,第1836行,在 单个查询文件 “MyProject/Query.py”,第1563行,在 查询所有数据库 self.database_保存_all()文件“MyProject/Query.py”,第243行,在 数据库\保存\全部 self.database\u saving\u mets()文件“MyProject/Query.py”,第519行,在 数据库保存方法 met.save \-u到\-SQL \-db()文件“MyProject\composite.py”,第829行, 在保存到SQL数据库中 else:文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\models\manager.py”, 第82行,在manager_方法中 返回getattr(self.get\u queryset(),name)(*args,**kwargs)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\models\query.py”, 第393行,输入get num=len(克隆)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\models\query.py”, 第250行,在len中 self.\u fetch\u all()文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\models\query.py”, 第1186行,全部取数 self.\u result\u cache=list(self.\u iterable\u class(self))文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\models\query.py”, 国际热核实验堆第54行 结果=编译器.execute_sql(chunked_fetch=self.chunked_fetch,chunk_size=self.chunk_size)文件 “user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\models\sql\compiler.py”, 执行sql中的第1065行 cursor.execute(sql,params)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\utils.py”, 第100行,执行中 return super().execute(sql,params)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\utils.py”, 第68行,执行中 返回self.\u使用包装器(sql、参数、many=False、executor=self.\u execute)文件执行self.\u “user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\utils.py”, 第77行,使用包装器执行 返回执行器(sql,params,many,context)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\utils.py”, 第85行,in_执行 返回self.cursor.execute(sql,params)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\utils.py”, 第89行,在退出中 提高dj_exc_值。使用exc_值文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\utils.py”中的“回溯(traceback)”, 第85行,in_执行 返回self.cursor.execute(sql,params)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\django\db\backends\mysql\base.py”, 执行中的第71行 返回self.cursor.execute(query,args)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\pymysql\cursors.py”, 执行中的第170行 result=self.\u查询(query)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\pymysql\cursors.py”, 第328行,在查询中 conn.query(q)文件“user\AppData\Local\Programs\Python\Python37-32\lib\site packages\pymysql\connections.py”, 查询中的第515行 self.\u execute\u命令(command.COM\u QUERY,sql)文件“user\AppData\Local\Programs\Python37-32\lib\site packages\pymysql\connections.py”, 第745行,in_执行_命令 raise err.InterfaceError(“(0,”))django.db.utils.InterfaceError:(0,)


我知道,这不是最佳答案,但对我来说,尝试关闭3次连接,然后再次重新连接起作用

 try:
     connections.close_all()
 except:
     try:
         connections.close_all()
     except:
         try:
             connections.close_all()
         except:
             pass
还尝试在settings.py中将CONN_MAX_AGE设置为None,但没有成功