请问在使用 Torndb 时如何捕获 mysql 的具体错误?

2014-05-25 19:16:49 +08:00
 Plumes
举个例子:
想实现用户的注册功能,用户名唯一,直接 INSERT 得到的用户名和密码,当捕获到 "Duplicate entry" 错误时返回用户名重复消息。
但是发现 torndb 返回的消息为 IntergrityError: (1062, "Duplicate entry ...") 这样的,请问怎样能捕获到 "Duplicate entry" 这个错误,而不只是捕获到 IntergrityError?
或者有更优雅的方式实现?
4844 次点击
所在节点    Tornado
1 条回复
dbow
2014-05-25 19:44:27 +08:00
不懂torndb,只是Duplicate entry看起来是IntergrityError的一种,如果想只针对Duplicate entry可以用
try:
....
except IntergrityError as e:
if 1062 not in e.args:
raise e
//your code

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/114196

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX