1 个不稳定版本

0.10.1-alpha.0 2021年9月6日
0.0.1 2021年9月6日

#17#dialect


2 crate 中使用

Apache-2.0

320KB
7.5K SLoC

这是一个 sqlx-models 的辅助库。不要直接依赖于它。


lib.rs:

Rust SQL 解析器

示例代码

这个库提供了一个 ANSI:SQL 2011 词法和语法分析器,可以将 SQL 解析成抽象语法树 (AST)。

use sqlparser::dialect::GenericDialect;
use sqlparser::parser::Parser;

let dialect = GenericDialect {}; // or AnsiDialect

let sql = "SELECT a, b, 123, myfunc(b) \
           FROM table_1 \
           WHERE a > b AND b < 100 \
           ORDER BY a DESC, b";

let ast = Parser::parse_sql(&dialect, sql).unwrap();

println!("AST: {:?}", ast);

依赖关系

~46–500KB
~11K SLoC