2016-06-29 11 views

Antwort

0

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 
Verwandte Themen