pub struct Book {
pub isbn: [u8; 13],
pub title: String,
pub author: Uuid,
pub co_author: Option<Uuid>,
pub year: i32,
}Fields§
§isbn: [u8; 13]§title: StringMain author
year: i32Trait Implementations§
Source§impl BookColumnTrait for Book
impl BookColumnTrait for Book
Source§impl Entity for Book
impl Entity for Book
Source§type PrimaryKey<'a> = (&'a String, &'a Uuid)
type PrimaryKey<'a> = (&'a String, &'a Uuid)
Primary key type. A tuple of field types (or single type) forming the PK.
Source§fn primary_key_def() -> &'static [&'static ColumnDef]
fn primary_key_def() -> &'static [&'static ColumnDef]
Primary key column definitions. Empty if no PK defined.
Source§fn primary_key<'a>(&'a self) -> Self::PrimaryKey<'a>
fn primary_key<'a>(&'a self) -> Self::PrimaryKey<'a>
Extract PK value(s) from
self.Source§fn primary_key_expr(&self) -> impl Expression
fn primary_key_expr(&self) -> impl Expression
Build an expression matching the PK of
self.Source§fn unique_defs() -> impl ExactSizeIterator<Item = impl ExactSizeIterator<Item = &'static ColumnDef>>
fn unique_defs() -> impl ExactSizeIterator<Item = impl ExactSizeIterator<Item = &'static ColumnDef>>
Unique constraint definitions.
Source§fn row_values(&self) -> RowValues
fn row_values(&self) -> RowValues
Full row representation including all persisted columns.
Source§fn create_table(
executor: &mut impl Executor,
if_not_exists: bool,
create_schema: bool,
) -> impl Future<Output = Result<(), Error>> + Sendwhere
Self: Sized,
fn create_table(
executor: &mut impl Executor,
if_not_exists: bool,
create_schema: bool,
) -> impl Future<Output = Result<(), Error>> + Sendwhere
Self: Sized,
Create table (and optional schema). Read more
Source§fn drop_table(
executor: &mut impl Executor,
if_exists: bool,
drop_schema: bool,
) -> impl Future<Output = Result<(), Error>> + Sendwhere
Self: Sized,
fn drop_table(
executor: &mut impl Executor,
if_exists: bool,
drop_schema: bool,
) -> impl Future<Output = Result<(), Error>> + Sendwhere
Self: Sized,
Drop the table (and optional schema). Read more
Source§fn insert_one(
executor: &mut impl Executor,
entity: &impl Entity,
) -> impl Future<Output = Result<RowsAffected, Error>> + Send
fn insert_one( executor: &mut impl Executor, entity: &impl Entity, ) -> impl Future<Output = Result<RowsAffected, Error>> + Send
Insert a single entity.
Source§fn insert_many<'a, It>(
executor: &mut impl Executor,
items: It,
) -> impl Future<Output = Result<RowsAffected, Error>> + Sendwhere
Self: Sized + 'a,
It: IntoIterator<Item = &'a Self> + Send,
<It as IntoIterator>::IntoIter: Send,
fn insert_many<'a, It>(
executor: &mut impl Executor,
items: It,
) -> impl Future<Output = Result<RowsAffected, Error>> + Sendwhere
Self: Sized + 'a,
It: IntoIterator<Item = &'a Self> + Send,
<It as IntoIterator>::IntoIter: Send,
Bulk insert entities.
Source§fn prepare_find<Exec>(
executor: &mut Exec,
condition: impl Expression,
limit: Option<u32>,
) -> impl Future<Output = Result<Query<<Exec as Executor>::Driver>, Error>> + Sendwhere
Exec: Executor,
fn prepare_find<Exec>(
executor: &mut Exec,
condition: impl Expression,
limit: Option<u32>,
) -> impl Future<Output = Result<Query<<Exec as Executor>::Driver>, Error>> + Sendwhere
Exec: Executor,
Prepare (but do not yet run) a SQL select query. Read more
Source§fn find_one(
executor: &mut impl Executor,
condition: impl Expression,
) -> impl Future<Output = Result<Option<Self>, Error>> + Sendwhere
Self: Sized,
fn find_one(
executor: &mut impl Executor,
condition: impl Expression,
) -> impl Future<Output = Result<Option<Self>, Error>> + Sendwhere
Self: Sized,
Finds the first entity matching a condition expression. Read more
Source§fn find_many(
executor: &mut impl Executor,
condition: impl Expression,
limit: Option<u32>,
) -> impl Stream<Item = Result<Self, Error>> + Sendwhere
Self: Sized,
fn find_many(
executor: &mut impl Executor,
condition: impl Expression,
limit: Option<u32>,
) -> impl Stream<Item = Result<Self, Error>> + Sendwhere
Self: Sized,
Streams entities matching a condition. Read more
Source§fn delete_many(
executor: &mut impl Executor,
condition: impl Expression,
) -> impl Future<Output = Result<RowsAffected, Error>> + Sendwhere
Self: Sized,
fn delete_many(
executor: &mut impl Executor,
condition: impl Expression,
) -> impl Future<Output = Result<RowsAffected, Error>> + Sendwhere
Self: Sized,
Deletes all entities matching a condition. Read more
Source§impl Expression for Book
impl Expression for Book
Source§fn write_query(
&self,
writer: &dyn SqlWriter,
context: &mut Context,
out: &mut DynQuery,
)
fn write_query( &self, writer: &dyn SqlWriter, context: &mut Context, out: &mut DynQuery, )
Generates the SQL representation of this expression.
Source§fn accept_visitor(
&self,
_matcher: &mut dyn ExpressionVisitor,
_writer: &dyn SqlWriter,
_context: &mut Context,
_out: &mut DynQuery,
) -> bool
fn accept_visitor( &self, _matcher: &mut dyn ExpressionVisitor, _writer: &dyn SqlWriter, _context: &mut Context, _out: &mut DynQuery, ) -> bool
Traverses the expression with a visitor. Read more
Source§fn as_identifier(&self, context: &mut Context) -> String
fn as_identifier(&self, context: &mut Context) -> String
Renders the expression as a string suitable for use as an identifier.
Source§impl OpPrecedence for Book
impl OpPrecedence for Book
Source§fn precedence(&self, _: &dyn SqlWriter) -> i32
fn precedence(&self, _: &dyn SqlWriter) -> i32
Lower numbers bind weaker, writers parenthesize when child precedence <= operator precedence.
impl StructuralPartialEq for Book
Auto Trait Implementations§
impl Freeze for Book
impl RefUnwindSafe for Book
impl Send for Book
impl Sync for Book
impl Unpin for Book
impl UnsafeUnpin for Book
impl UnwindSafe for Book
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<E> Dataset for Ewhere
E: Entity,
impl<E> Dataset for Ewhere
E: Entity,
Source§fn qualified_columns() -> boolwhere
E: Sized,
fn qualified_columns() -> boolwhere
E: Sized,
Indicates whether column names should be fully qualified with schema and table name.
For entities this returns false to keep queries concise, for joins it returns true.