5个版本 (3个破坏性更新)
0.4.0 | 2020年6月23日 |
---|---|
0.3.1 | 2020年1月17日 |
0.3.0 | 2019年12月18日 |
0.2.0 | 2019年10月29日 |
0.1.0 | 2019年8月28日 |
#2827 in 数据库接口
每月63次下载
20KB
417 行
一组用于构建期望正确转义的SQL查询的类型和辅助工具。
示例用法
use format_sql_query::*;
println!("SELECT {} FROM {} WHERE {} = {}", Column("foo bar".into()), SchemaTable("foo".into(), "baz".into()), Column("blah".into()), QuotedData("hello 'world' foo"));
// SELECT "foo bar" FROM foo.baz WHERE blah = 'hello ''world'' foo'
lib.rs
:
一组用于构建期望正确转义的SQL查询的类型和辅助工具。
示例用法
use format_sql_query::*;
println!("SELECT {} FROM {} WHERE {} = {}", Column("foo bar".into()), SchemaTable("foo".into(), "baz".into()), Column("blah".into()), QuotedData("hello 'world' foo"));
// SELECT "foo bar" FROM foo.baz WHERE blah = 'hello ''world'' foo'
设计目标
- 所有对象都将实现
Display
,以便获取转义并可能加引号的格式,可以直接用于SQL语句。 - 通过将大多数类型包装在字符串切片周围来避免分配。
- 用于从字符串和其他对象构建对象的新类型模式。
- 慷慨的
From
特征实现,以便轻松从字符串构建对象。 - 所有单字段新类型对象都将实现
.as_str()
以获取原始值。 - 字符串切片包装器类型实现
Copy
以便于使用。 - 类型应该实现
Eq
和Ord
。 - 具有多个字段的新类型对象应该有getter。
- 返回类型时,确保它们不引用self,而是引用原始字符串切片的生命周期。
所有对象都使用基本转义规则包装器
ObjectConcat
用于表名、模式、列等。QuotedDataConcat
用于数据值
依赖关系
~460KB