pub struct DoDatabaseError { /* private fields */ }Expand description
An error the database returned for a statement.
Neither D1 nor Durable Object storage reports a structured result code
across the binding, only SQLite’s message as text, which ends with the code
by name: NOT NULL constraint failed: users.email: SQLITE_CONSTRAINT (extended: SQLITE_CONSTRAINT_NOTNULL).
code is that name, and
kind is read from it.
Implementations§
Source§impl DatabaseError
impl DatabaseError
Sourcepub fn new(message: String) -> DatabaseError
pub fn new(message: String) -> DatabaseError
The error for message, as the backend threw it.
Trait Implementations§
Source§impl Clone for DatabaseError
impl Clone for DatabaseError
Source§fn clone(&self) -> DatabaseError
fn clone(&self) -> DatabaseError
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl DatabaseError for DatabaseError
impl DatabaseError for DatabaseError
Source§fn code(&self) -> Option<Cow<'_, str>>
fn code(&self) -> Option<Cow<'_, str>>
SQLite’s result code by name – the extended one when the message has it, as
in SQLITE_CONSTRAINT_UNIQUE, else the primary one.
Source§fn constraint(&self) -> Option<&str>
fn constraint(&self) -> Option<&str>
Returns the name of the constraint that triggered the error, if applicable.
If the error was caused by a conflict of a unique index, this will be the index name. Read more
Source§fn table(&self) -> Option<&str>
fn table(&self) -> Option<&str>
Returns the name of the table that was affected by the error, if applicable. Read more
Source§fn is_unique_violation(&self) -> bool
fn is_unique_violation(&self) -> bool
Returns whether the error kind is a violation of a unique/primary key constraint.
Source§fn is_foreign_key_violation(&self) -> bool
fn is_foreign_key_violation(&self) -> bool
Returns whether the error kind is a violation of a foreign key.
Source§fn is_check_violation(&self) -> bool
fn is_check_violation(&self) -> bool
Returns whether the error kind is a violation of a check.
Source§impl Debug for DatabaseError
impl Debug for DatabaseError
Source§impl Display for DatabaseError
impl Display for DatabaseError
impl Eq for DatabaseError
Source§impl Error for DatabaseError
impl Error for DatabaseError
1.30.0 · 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()
Source§impl PartialEq for DatabaseError
impl PartialEq for DatabaseError
impl StructuralPartialEq for DatabaseError
Auto Trait Implementations§
impl Freeze for DatabaseError
impl RefUnwindSafe for DatabaseError
impl Send for DatabaseError
impl Sync for DatabaseError
impl Unpin for DatabaseError
impl UnsafeUnpin for DatabaseError
impl UnwindSafe for DatabaseError
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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