2017-01-26 5 views
1

Im Python ziemlich neu und haben eine SQL-Insert-Anweisung, die eine Ausnahme auslöst aufgrund einer Primärschlüsselverletzung:MySQLdb Fehler in Python Handhabung 2.7

File "C:\Python27\lib\site-packages\MySQLdb\cursors.py", line 202, in execute 
self.errorhandler(self, exc, value) 
File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 36, in defaulterrorhandler 
raise errorclass, errorvalue 
_mysql_exceptions.IntegrityError: (1062, "Duplicate entry 'Y31 ROB' for key 'PRIMARY'") 

Wie Sie diesen Fehler umgehen, also wenn es geworfen wird es verlässt die Funktion?

Ich habe versucht:

try: 
    webcur.execute("INSERT INTO foo VALUES bar") 
except (MySQLdb.Error): 
    return 

und auch:

except (MySQLdb.IntegrityError) 

aber weder zu funktionieren scheint.

+0

Das wird es, vielen Dank! –

Antwort

1

Versuchen Sie es zu einer Variablen zugewiesen wird, wie so:

try: 
    webcur.execute("INSERT INTO foo VALUES bar") 
except MySQLdb.Error as e: 
    return