In PyMySQL, Wie man pymysql.connect
Keep-Alive für immer machen?PyMySQL werfen "pymysql.err.Error: Bereits geschlossen"
ODER
Wie bereits geschlossen überprüfen verbinden, bevor verwendet.
In PyMySQL, Wie man pymysql.connect
Keep-Alive für immer machen?PyMySQL werfen "pymysql.err.Error: Bereits geschlossen"
ODER
Wie bereits geschlossen überprüfen verbinden, bevor verwendet.
am pymysql
Code Sehen, bei this Linie, werden Sie sehen, dass das connection
Objekt hat eine Eigenschaft open
:
@property
def open(self):
return self._sock is not None
Also, einfach überprüfen, ob die Verbindung noch offen mit dieser Eigenschaft ist:
myconn = connection(host,username,password,db)
if conn.open:
# do your db management here
else:
#connect again
Alternativ können Sie die Ausnahme abfangen, die ausgelöst wird, indem Sie die DB treffen, wo die Verbindung bereits geschlossen war, dies wird einen Fehlercode 2006 (was Sie auch können siehe in this Linie):
try:
cursor.execute(myquery)
except pymysql.OperationalError as e:
if e.errno == 2006:
#reconnect to server