"Tosqlcondition" is a convenient derived macro that generates SQL query conditions, reducing the amount of manual coding required. However, it currently has limited capabilities and can only support a few features, such as WHERE and LIMIT.
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
Perhaps we want to use query commands with certain files. In Rust, we could create a struct to handle this.
```rust use tosqlcondition::ToSqlCondition;
struct Query {
id: 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");
}
```
order
feature