#! python3
import mysql.connector
class A:
def __init__(self):
self.dbconfig = {....}
self.conn = mysql.connector.connect(**self.dbconfig)
self.cur = self.conn.cursor()
def __del__(self):
self.cur.close()
self.conn.close()
数据库连接也成功了,但是执行完该类后就会报错:
Exception ignored in: <bound method A.__del__ of <__main__.**** object at 0x0000000001151358>>
Traceback (most recent call last):
File "****.py", line *, in __del__
File "*****\Python35\lib\site-packages\mysql\connector\cursor.py", line 344, in close
ReferenceError: weakly-referenced object no longer exists
还请知道什么原因的司机解惑!万分感谢!
按stackoverflow上的方案就是我写的这样,但是还是有问题,难道是我的翻译软件有问题?
伊谢尔伦2017-04-18 10:25:32
それでは、自分で答えてください。エラーの原因がわかりません。レベルが上がったときに回答します。一時的な解決策:
リーリー補足:
__del__()ではカーソルを閉じることができないことが分かりました
怪我咯2017-04-18 10:25:32
設定が間違っていて、mysql に接続されていない可能性があります
このコード self.cur = self.conn.cursor() がエラーを報告する場合、それは接続されていないことを意味します