我正在按照书本上的例子使用try/except块来捕获SQLAlchemy Core中的异常:
from sqlalchemy.exc import IntegrityError
ins = insert(users).values(
username="cookiemon", #This username is already in db,
email_address="damon@cookie.com", should throw an IntegrityError
phone="111-111-1111", for violating unique constraint
password="password"
)
try:
result=connection.execute(ins)
except IntegrityError as error:
print(error.orig.message, error.params)
然而,我遇到了以下错误信息:
AttributeError: 'IntegrityError' 对象没有 'message' 属性
这是从书中的例子直接复制的,为什么我不能显示错误消息呢?
message
属性,而是有args
。请参考http://www.python.org/dev/peps/pep-0352/#transition-plan。 - Ilja Everilä