用于SQLAlchemy的异常。
基本异常类是SQLAlchemyError
。由于DBAPI异常而引发的异常是DBAPIError
的所有子类。
sqlalchemy.exc。
AmbiguousForeignKeysError
¶在加入过程中,当两个选择项之间可以有多个外键匹配时引发。
sqlalchemy.exc。
ArgumentError
¶当提供无效或冲突的函数参数时引发。
这个错误通常对应于施工时间状态错误。
sqlalchemy.exc.
CircularDependencyError
(message, cycles, edges, msg=None)¶当检测到循环依赖时,由拓扑排序引发。
有两种情况发生此错误:
post_update
flag described at Rows that point to themselves / Mutually Dependent Rows can resolve this cycle.MetaData.sorted_tables
操作中,两个ForeignKey
或ForeignKeyConstraint
对象相互参照。将use_alter=True
标志应用于一个或两个标志,请参阅Creating/Dropping Foreign Key Constraints via ALTER创建/删除外键约束。sqlalchemy.exc。
CompileError
¶在SQL编译期间发生错误时引发
sqlalchemy.exc.
DBAPIError
(statement, params, orig, connection_invalidated=False)¶在执行数据库操作失败时引发。
包装数据库操作底层的DB-API引发的异常。在可能的情况下,标准DB-API异常类型的驱动程序特定实现由匹配的子类型SQLAlchemy的DBAPIError
包装。在SQLAlchemy中,DB-API的Error
类型映射到DBAPIError
,否则名称是相同的。请注意,对于任何给定的错误条件,不能保证不同的DB-API实现将引发相同的异常类型。
DBAPIError
features statement
and params
attributes which supply context regarding the specifics of the statement which had an issue, for the typical case when the error was raised within the context of emitting a SQL statement.
包装的异常对象在orig
属性中可用。它的类型和属性是特定于DB-API实现的。
sqlalchemy.exc.
DataError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API DataError。
sqlalchemy.exc.
DatabaseError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API DatabaseError。
sqlalchemy.exc。
DisconnectionError
¶在原始DB-API连接上检测到断开连接。
此错误在连接池内部引发并消耗。它可以由PoolEvents.checkout()
事件引发,以便主池强制重试;在连接尝试失败之前,异常将被连续捕获三次,并引发InvalidRequestError
。
sqlalchemy.exc。
DontWrapMixin
¶如果在执行语句的过程中发生错误,则应用于用户定义的Exception类的mixin类将不会被包装在StatementError
中。
例如。:
from sqlalchemy.exc import DontWrapMixin
class MyCustomException(Exception, DontWrapMixin):
pass
class MySpecialType(TypeDecorator):
impl = String
def process_bind_param(self, value, dialect):
if value == 'invalid':
raise MyCustomException("invalid!")
sqlalchemy.exc。
标识符错误
¶当架构名称超出最大字符数限制时引发
sqlalchemy.exc.
IntegrityError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API IntegrityError。
sqlalchemy.exc.
InterfaceError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API InterfaceError。
sqlalchemy.exc.
InternalError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API InternalError。
sqlalchemy.exc。
InvalidRequestError
¶SQLAlchemy被要求做一些不能做的事情。
此错误通常对应于运行时状态错误。
sqlalchemy.exc。
NoForeignKeysError
¶在连接期间没有外键可以位于两个选择之间时引发。
sqlalchemy.exc。
NoInspectionAvailable
¶传递给sqlalchemy.inspection.inspect()
的主题未产生检查上下文。
sqlalchemy.exc。
NoReferenceError
¶由ForeignKey
引发,表示无法解析引用。
sqlalchemy.exc.
NoReferencedColumnError
(message, tname, cname)¶当引用的Column
无法定位时,由ForeignKey
引发。
sqlalchemy.exc。 T1> NoReferencedTableError T2> ( T3> 消息 T4>, TNAME T5> ) T6> ¶ T7>
当找不到Table
时,由ForeignKey
引发。
sqlalchemy.exc。
NoSuchColumnError
¶从RowProxy
请求不存在的列。
sqlalchemy.exc。
NoSuchModuleError
¶当无法定位特定名称的动态加载模块(通常是数据库方言)时引发。
sqlalchemy.exc。
NoSuchTableError
¶表格不存在或对连接不可见。
sqlalchemy.exc.
NotSupportedError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API NotSupportedError。
sqlalchemy.exc.
OperationalError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API OperationalError。
sqlalchemy.exc.
ProgrammingError
(statement, params, orig, connection_invalidated=False)¶包装一个DB-API ProgrammingError。
sqlalchemy.exc。
ResourceClosedError
¶从连接,光标或其他处于关闭状态的对象请求执行操作。
sqlalchemy.exc。
SADeprecationWarning
¶每次使用已弃用的API发布一次。
sqlalchemy.exc。
SAPendingDeprecationWarning
¶每次使用已弃用的API发布一次。
sqlalchemy.exc。
SAWarning
¶在运行时发布。
sqlalchemy.exc。
SQLAlchemyError
¶通用错误类。
sqlalchemy.exc.
StatementError
(message, statement, params, orig)¶执行SQL语句期间发生错误。
StatementError
wraps the exception raised during execution, and features statement
and params
attributes which supply context regarding the specifics of the statement which had an issue.
包装的异常对象在orig
属性中可用。
orig
=无 ¶DBAPI异常对象。
params
=无 ¶发生此异常时使用的参数列表。
语句
=无 ¶发生此异常时将调用字符串SQL语句。
sqlalchemy.exc。
TimeoutError
¶当连接池超时获取连接时引发。
sqlalchemy.exc。
UnboundExecutionError
¶SQL试图在没有数据库连接的情况下执行它。
sqlalchemy.exc.
UnsupportedCompilationError
(compiler, element_type)¶当一个操作不被给定的编译器支持时引发。
0.8.3版本中的新功能