DbErr

Enum DbErr 

Source
pub enum DbErr {
Show 22 variants ConnectionAcquire(ConnAcquireErr), TryIntoErr { from: &'static str, into: &'static str, source: Arc<dyn Error + Send + Sync>, }, Conn(RuntimeErr), Exec(RuntimeErr), Query(RuntimeErr), ConvertFromU64(&'static str), UnpackInsertId, UpdateGetPrimaryKey, RecordNotFound(String), AttrNotSet(String), Custom(String), Type(String), Json(String), Migration(String), RecordNotInserted, RecordNotUpdated, BackendNotSupported { db: &'static str, ctx: &'static str, }, KeyArityMismatch { expected: u8, received: u8, }, PrimaryKeyNotSet { ctx: &'static str, }, RbacError(String), AccessDenied { permission: String, resource: String, }, MutexPoisonError,
}
Expand description

An error from unsuccessful database operations

Variantsยง

ยง

ConnectionAcquire(ConnAcquireErr)

This error can happen when the connection pool is fully-utilized

ยง

TryIntoErr

Runtime type conversion error

Fields

ยงfrom: &'static str

From type

ยงinto: &'static str

Into type

ยงsource: Arc<dyn Error + Send + Sync>

TryError

ยง

Conn(RuntimeErr)

There was a problem with the database connection

ยง

Exec(RuntimeErr)

An operation did not execute successfully

ยง

Query(RuntimeErr)

An error occurred while performing a query

ยง

ConvertFromU64(&'static str)

Type error: the specified type cannot be converted from u64. This is not a runtime error.

ยง

UnpackInsertId

After an insert statement it was impossible to retrieve the last_insert_id

ยง

UpdateGetPrimaryKey

When updating, a model should know its primary key to check if the record has been correctly updated, otherwise this error will occur

ยง

RecordNotFound(String)

The record was not found in the database

ยง

AttrNotSet(String)

Thrown by TryFrom<ActiveModel>, which assumes all attributes are set/unchanged

ยง

Custom(String)

A custom error

ยง

Type(String)

Error occurred while parsing value as target type

ยง

Json(String)

Error occurred while parsing json value as target type

ยง

Migration(String)

A migration error

ยง

RecordNotInserted

None of the records are inserted, that probably means all of them conflict with existing records in the table

ยง

RecordNotUpdated

None of the records are updated, that means a WHERE condition has no matches. May be the table is empty or the record does not exist

ยง

BackendNotSupported

This operation is not supported by the database backend

Fields

ยงdb: &'static str

Database backend

ยงctx: &'static str

Context

ยง

KeyArityMismatch

(Primary) Key arity mismatch

Fields

ยงexpected: u8

Expected value

ยงreceived: u8

Received value

ยง

PrimaryKeyNotSet

Primay key not set for update / delete

Fields

ยงctx: &'static str

Context

ยง

RbacError(String)

Error while running RBAC checks

ยง

AccessDenied

Access denied after running RBAC checks

Fields

ยงpermission: String

The required permission

ยงresource: String

The requested resource

ยง

MutexPoisonError

Mutex was poisoned by another thread

Implementationsยง

Sourceยง

impl DbErr

Source

pub fn sql_err(&self) -> Option<SqlErr>

Convert generic DbErr by sqlx to SqlErr, return none if the error is not any type of SqlErr

Trait Implementationsยง

Sourceยง

impl Clone for DbErr

Sourceยง

fn clone(&self) -> DbErr

Returns a duplicate of the value. Read more
1.0.0 ยท Sourceยง

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Sourceยง

impl Debug for DbErr

Sourceยง

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Sourceยง

impl Display for DbErr

Sourceยง

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Sourceยง

impl Error for DbErr

Sourceยง

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

๐Ÿ‘ŽDeprecated since 1.42.0: use the Display impl or to_string()
1.0.0 ยท Sourceยง

fn cause(&self) -> Option<&dyn Error>

๐Ÿ‘ŽDeprecated since 1.33.0: replaced by Error::source, which can support downcasting
Sourceยง

fn provide<'a>(&'a self, request: &mut Request<'a>)

๐Ÿ”ฌThis is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Sourceยง

impl<E> From<DbErr> for TransactionError<E>
where E: Display + Debug,

Sourceยง

fn from(e: DbErr) -> Self

Converts to this type from the input type.
Sourceยง

impl From<DbErr> for TryGetError

Sourceยง

fn from(e: DbErr) -> TryGetError

Converts to this type from the input type.
Sourceยง

impl From<TryGetError> for DbErr

Sourceยง

fn from(e: TryGetError) -> DbErr

Converts to this type from the input type.
Sourceยง

impl PartialEq for DbErr

Sourceยง

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 ยท Sourceยง

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Sourceยง

impl Eq for DbErr

Auto Trait Implementationsยง

Blanket Implementationsยง

Sourceยง

impl<T> Any for T
where T: 'static + ?Sized,

Sourceยง

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Sourceยง

impl<T> Borrow<T> for T
where T: ?Sized,

Sourceยง

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Sourceยง

impl<T> BorrowMut<T> for T
where T: ?Sized,

Sourceยง

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Sourceยง

impl<T> CloneToUninit for T
where T: Clone,

Sourceยง

unsafe fn clone_to_uninit(&self, dest: *mut u8)

๐Ÿ”ฌThis is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Sourceยง

impl<T> From<T> for T

Sourceยง

fn from(t: T) -> T

Returns the argument unchanged.

Sourceยง

impl<T> Instrument for T

Sourceยง

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Sourceยง

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Sourceยง

impl<T, U> Into<U> for T
where U: From<T>,

Sourceยง

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Sourceยง

impl<T> IntoEither for T

Sourceยง

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 more
Sourceยง

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Sourceยง

impl<T> ToOwned for T
where T: Clone,

Sourceยง

type Owned = T

The resulting type after obtaining ownership.
Sourceยง

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Sourceยง

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Sourceยง

impl<T> ToString for T
where T: Display + ?Sized,

Sourceยง

fn to_string(&self) -> String

Converts the given value to a String. Read more
Sourceยง

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Sourceยง

type Error = Infallible

The type returned in the event of a conversion error.
Sourceยง

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Sourceยง

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Sourceยง

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Sourceยง

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Sourceยง

impl<T> WithSubscriber for T

Sourceยง

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Sourceยง

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more