Trait QueryBuilderWithWhere

Source
pub trait QueryBuilderWithWhere: QueryBuilder {
    // Required method
    fn where_condition(&mut self, raw: &str) -> &mut Self;

    // Provided methods
    fn where_eq<T: 'static + ToSql + Sync + Clone>(
        &mut self,
        field: &str,
        value: T,
    ) -> &mut Self { ... }
    fn where_ne<T: 'static + ToSql + Sync + Clone>(
        &mut self,
        field: &str,
        value: T,
    ) -> &mut Self { ... }
}

Required Methods§

Source

fn where_condition(&mut self, raw: &str) -> &mut Self

Add where condition to query

§Examples
use postgres_querybuilder::SelectBuilder;
use postgres_querybuilder::prelude::QueryBuilder;
use postgres_querybuilder::prelude::QueryBuilderWithWhere;

let user_password = "password".to_string();
let mut builder = SelectBuilder::new("users");
let first = builder.add_param(18);
let second = builder.add_param(28);
let condition = format!("age = ${} OR age = ${}", first, second);
builder.where_condition(condition.as_str());

assert_eq!(builder.get_query(), "SELECT * FROM users WHERE age = $1 OR age = $2");

Provided Methods§

Source

fn where_eq<T: 'static + ToSql + Sync + Clone>( &mut self, field: &str, value: T, ) -> &mut Self

Add where equal condition to query

§Examples
use postgres_querybuilder::SelectBuilder;
use postgres_querybuilder::prelude::QueryBuilder;
use postgres_querybuilder::prelude::QueryBuilderWithWhere;

let user_password = "password".to_string();
let mut builder = SelectBuilder::new("users");
builder.where_eq("id", 42);

assert_eq!(builder.get_query(), "SELECT * FROM users WHERE id = $1");
Source

fn where_ne<T: 'static + ToSql + Sync + Clone>( &mut self, field: &str, value: T, ) -> &mut Self

Add where not equal condition to query

§Examples
use postgres_querybuilder::SelectBuilder;
use postgres_querybuilder::prelude::QueryBuilder;
use postgres_querybuilder::prelude::QueryBuilderWithWhere;

let user_password = "password".to_string();
let mut builder = SelectBuilder::new("users");
builder.where_ne("id", 42);

assert_eq!(builder.get_query(), "SELECT * FROM users WHERE id <> $1");

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§