Sto usando Python/Bottle/SqlAlchemy/MySQL per un servizio web.non riesce a catturare MySQL IntegrityError in Python
Sto tentando di rilevare un errore di integrità generato chiamando una stored procedure ma non riesco a farlo.
Usando questo
cursor = connection.cursor()
cursor.callproc('my_stored_proc', [arguments])
produce lo stesso risultato come
try:
cursor = connection.cursor()
cursor.callproc('my_stored_proc', [arguments])
except IntegrityError as e:
print("Error: {}".format(e))
return {"message": e.message}
ottengo un'eccezione IntegrityError in entrambi i casi. Perché l'eccezione non viene catturata in quest'ultimo caso?
Come/quando stai commettendo la transazione? L'errore "IntegrityError" verrà probabilmente generato quando la transazione viene eseguita, non quando si chiama la stored procedure. –