ormlite 0.24.3

An ORM for people who love SQL
Documentation
use ormlite::model::*;
use ormlite::Connection;
use uuid::Uuid;

#[derive(Model)]
pub struct Person {
    id: Uuid,
    #[ormlite(primary_key)]
    name: String,
    age: u8,
}


pub static CREATE_TABLE_SQL: &str =
    "CREATE TABLE person (id text PRIMARY KEY, name TEXT, age INTEGER)";

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    env_logger::init();
    let mut db = ormlite::sqlite::SqliteConnection::connect(":memory:").await.unwrap();
    ormlite::query(CREATE_TABLE_SQL)
        .execute(&mut db)
        .await?;

    let p = Person {
        id: Uuid::new_v4(),
        name: "John".to_string(),
        age: 99,
    }.insert(&mut db).await?;

    let p = p.update_partial()
        .age(100)
        .update(&mut db)
        .await?;

    assert_eq!(p.age, 100);

    Ok(())
}