AssertSqlSafe

Struct AssertSqlSafe 

Source
pub struct AssertSqlSafe<T>(pub T);
Expand description

Assert that a query string is safe to execute on a database connection.

Using this API means that you have made sure that the string contents do not contain a SQL injection vulnerability. It means that, if the string was constructed dynamically, and/or from user input, you have taken care to sanitize the input yourself. SQLx does not provide any sort of sanitization; the design of SQLx prefers the use of prepared statements for dynamic input.

The maintainers of SQLx take no responsibility for any data leaks or loss resulting from misuse of this API. Use at your own risk.

Note that &'static str implements SqlSafeStr directly and so does not need to be wrapped with this type.

Tuple Fields§

§0: T

Trait Implementations§

Source§

impl SqlSafeStr for AssertSqlSafe<&str>

Note: copies the string.

It is recommended to pass one of the supported owned string types instead.

Source§

fn into_sql_str(self) -> SqlStr

Convert self to a SqlStr.
Source§

impl SqlSafeStr for AssertSqlSafe<Arc<String>>

Source§

fn into_sql_str(self) -> SqlStr

Convert self to a SqlStr.
Source§

impl SqlSafeStr for AssertSqlSafe<Arc<str>>

Source§

fn into_sql_str(self) -> SqlStr

Convert self to a SqlStr.
Source§

impl SqlSafeStr for AssertSqlSafe<Box<str>>

Source§

fn into_sql_str(self) -> SqlStr

Convert self to a SqlStr.
Source§

impl SqlSafeStr for AssertSqlSafe<Cow<'static, str>>

Source§

fn into_sql_str(self) -> SqlStr

Convert self to a SqlStr.
Source§

impl SqlSafeStr for AssertSqlSafe<String>

Source§

fn into_sql_str(self) -> SqlStr

Convert self to a SqlStr.

Auto Trait Implementations§

§

impl<T> Freeze for AssertSqlSafe<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for AssertSqlSafe<T>
where T: RefUnwindSafe,

§

impl<T> Send for AssertSqlSafe<T>
where T: Send,

§

impl<T> Sync for AssertSqlSafe<T>
where T: Sync,

§

impl<T> Unpin for AssertSqlSafe<T>
where T: Unpin,

§

impl<T> UnwindSafe for AssertSqlSafe<T>
where T: UnwindSafe,

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<DB, T> Execute<'_, DB> for T
where DB: Database, T: SqlSafeStr + Send,

Source§

fn sql(self) -> SqlStr

Gets the SQL that will be executed.
Source§

fn statement(&self) -> Option<&<DB as Database>::Statement>

Gets the previously cached statement, if available.
Source§

fn take_arguments( &mut self, ) -> Result<Option<<DB as Database>::Arguments>, Box<dyn Error + Send + Sync>>

Returns the arguments to be bound against the query string. Read more
Source§

fn persistent(&self) -> bool

Returns true if the statement should be cached.
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, 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
Source§

impl<T> ErasedDestructor for T
where T: 'static,