无法在Python中捕获MySQL IntegrityError

问题描述 投票:5回答:2

我正在将Python / Bottle / SqlAlchemy / MySQL用于Web服务。

我试图捕获通过调用存储过程而引发的IntegrityError,但我无法做到这一点。

使用此

cursor = connection.cursor()
cursor.callproc('my_stored_proc', [arguments])

产生的结果与]相同>

try:
    cursor = connection.cursor()
    cursor.callproc('my_stored_proc', [arguments])
except IntegrityError as e:
    print("Error: {}".format(e))
    return {"message": e.message}

在两种情况下,我都会收到IntegrityError异常。为什么在后一种情况下没有捕获到异常?

我正在将Python / Bottle / SqlAlchemy / MySQL用于Web服务。我试图捕获通过调用存储过程引发的IntegrityError,但是我无法做到这一点。使用此光标= connection ....

python mysql stored-procedures exception-handling sqlalchemy
2个回答
11
投票

问题是我捕获了不正确的异常。


0
投票

就我而言,也是您的情况,您将使用sqlalchemy对象:

© www.soinside.com 2019 - 2024. All rights reserved.