pub enum Error {
Database(Error),
Pool(String),
Transaction(String),
Query(String),
Conversion(String),
Config(String),
Other(Error),
RowNotFound,
}Expand description
核心错误类型
定义了框架中使用的主要错误类型, 包含了所有可能出现的错误情况。
Variants§
Database(Error)
数据库错误
来自 SQLx 的原始数据库错误
Pool(String)
连接池错误
连接池管理相关的错误
Transaction(String)
事务错误
事务处理过程中的错误
Query(String)
查询错误
SQL 查询执行过程中的错误
Conversion(String)
值转换错误
数据类型转换过程中的错误
Config(String)
配置错误
配置相关的错误
Other(Error)
其他错误
未分类的通用错误
RowNotFound
记录未找到错误
查询结果为空时的错误
Implementations§
Source§impl Error
impl Error
Sourcepub fn is_not_found(&self) -> bool
pub fn is_not_found(&self) -> bool
检查是否为记录未找到错误
返回 true 如果错误类型为 RowNotFound
Sourcepub fn is_unique_violation(&self) -> bool
pub fn is_unique_violation(&self) -> bool
检查是否为唯一约束违反错误
返回 true 如果错误是由唯一约束违反导致的
Sourcepub fn is_foreign_key_violation(&self) -> bool
pub fn is_foreign_key_violation(&self) -> bool
检查是否为外键约束违反错误
返回 true 如果错误是由外键约束违反导致的
Trait Implementations§
Source§impl Error for Error
impl Error for Error
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for Error
impl !RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl !UnwindSafe for Error
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more