qoo 0.1.3

query builder library. Query Object Oriented.
Documentation
  • Coverage
  • 24.24%
    8 out of 33 items documented4 out of 26 items with examples
  • Size
  • Source code size: 11.48 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 529.34 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 8s Average build duration of successful builds.
  • all releases: 8s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • ddddddO

qoo

Latest Version Docs

Query Object Oriented. Pronunciation is Kuu.

demo

use qoo::prelude::*;

fn main() {
    let select_query =
        SelectBuilder::select(&["col0", "col1"])
            .columns(&["col2", "col3"])
            .from("table1")
            .wheres("id >= 100");
    assert_eq!(
        select_query.to_sql(),
        "select col0, col1, col2, col3 from table1 where id >= 100"
    );

    let insert_query =
        InsertBuilder::insert("test1")
            .columns(&["col0", "col1"])
            .value("'xxx'")
            .value("'yyy'");
    assert_eq!(
        insert_query.to_sql(),
        "insert into test1 (col0, col1) values ('xxx', 'yyy')"
    );

    let update_query =
        UpdateBuilder::update("test1")
            .set("col1='aaa'")
            .set("col2='bbb'")
            .wheres("id >= 11");
    assert_eq!(
        update_query.to_sql(),
        "update test1 set col1='aaa', col2='bbb' where id >= 11"
    );

    let delete_query =
        DeleteBuilder::delete()
            .from("test1")
            .wheres("id >= 100");
    assert_eq!(
        delete_query.to_sql(),
        "delete from test1 where id >= 100"
    );
}


inspired by