Crates.io | sqlx_macro_ex |
lib.rs | sqlx_macro_ex |
version | 0.2.0 |
source | src |
created_at | 2023-08-29 17:40:24.814488 |
updated_at | 2024-08-18 16:59:23.379807 |
description | Macros replace sqlx-macros without compiling time |
homepage | |
repository | https://github.com/dryBranch/sqlx_macro_ex |
max_upload_size | |
id | 958322 |
size | 4,376 |
Just for no compling time check.
#[derive(Debug, FromRow)]
struct User {
uid: i32,
name: String,
}
async fn insert_user(db: &DB, user: &User) -> sqlx::Result<()> {
sqlx_macro_ex::query!(
r#"
insert into user(uid, name)
values(?, ?)
"#,
&user.uid,
&user.name,
).execute(mdb).await?;
Ok(())
}
async fn get_user_with_uid(db: &DB, uid: i32) -> sqlx::Result<User> {
sqlx_macro_ex::query_as!(
User,
r#"
select * from user
where uid = ?
"#,
uid
).fetch_one(db).await
}
async fn get_user_names__in_range(db: &DB, uid: i32) -> sqlx::Result<Vec<String>> {
sqlx_macro_ex::query_scalar!(
String,
r#"
select name from user
where uid < ?
"#,
uid
).fetch_all(db).await
}