tosqlcondition

tosqlcondition is a simple derived macro that generates conditions for SQL query statements to reduce coding. Currently, it only supports a limited set of features, including WHERE and LIMIT.

useages

table

sql CREATE TABLE `od_commands` ( `id` int unsigned NOT NULL AUTO_INCREMENT, `name` char(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `ext` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

maybe we wan't query commands with some files, in rust, we may give a struct.

```rust use tosqlcondition::ToSqlCondition;

[derive(ToSqlCondition)]

struct Query { id: Option, name: Option, ext: Option, limit: Option, }

fn main() { let (q, q2, q3) = ( Query{id: None, name: Some("tom"), limit: Some(1)}, Query{id: None, name: None, limit: Some(10)}, Query{id: Some(2), name: None, limit: None}, ); asserteq!(q.tosqlcondition(), " WHERE name = 'tom' AND LIMIT 1"); asserteq!(q2.tosqlcondition(), " LIMIT 10"); asserteq!(q3.tosql_condition(), " WHERE id = 2"); } ```