Python 和 MySQL - 处理错误


错误的来源有很多。一些示例包括执行的 SQL 语句中的语法错误、连接失败或为已取消或完成的语句句柄调用 fetch 方法。

DB API 定义了每个数据库模块中必须存在的许多错误。下表列出了这些例外情况。

先生。 异常情况及说明
1

警告

用于非致命问题。必须子类化 StandardError。

2

错误

错误的基类。必须子类化 StandardError。

3

接口错误

用于数据库模块中的错误,而不是数据库本身的错误。必须子类化错误。

4

数据库错误

用于数据库中的错误。必须子类化错误。

5

数据错误

DatabaseError 的子类,指的是数据中的错误。

6

操作错误

DatabaseError 的子类,指的是诸如数据库连接丢失之类的错误。这些错误通常超出了 Python 脚本编写者的控制范围。

7

完整性错误

DatabaseError 的子类,适用于会损害关系完整性的情况,例如唯一性约束或外键。

8

内部错误

DatabaseError 的子类,指的是数据库模块内部的错误,例如游标不再处于活动状态。

9

编程错误

DatabaseError 的子类,指的是错误的表名和其他可以安全地归咎于您的错误。

10

不支持错误

DatabaseError 的子类,指的是尝试调用不受支持的功能。

您的 Python 脚本应该处理这些错误,但在使用上述任何异常之前,请确保您的 MySQLdb 支持该异常。您可以通过阅读 DB API 2.0 规范来获取有关它们的更多信息。