gluesql/gluesql:一个用Rust编写的SQL数据库引擎库包


GlueSQL 是一个用 Rust 编写的 SQL 数据库的库包(注意:不是数据库本身)。它提供了打包成单个库的解析器 ( sqlparser-rs )、执行层和可选存储 ( sled )。开发人员可以选择使用 GlueSQL 来构建自己的 SQL 数据库,或者作为使用默认存储引擎的嵌入式 SQL 数据库。
您可以将 GlueSQL 用作嵌入式 SQL 数据库。GlueSQL 提供sled作为默认存储引擎。

use gluesql::*;
fn main() {
    let storage = SledStorage::new("data/doc-db").unwrap();
    let mut glue = Glue::new(storage);
    let sqls = vec![
       
"DROP TABLE IF EXISTS Glue;",
       
"CREATE TABLE Glue (id INTEGER);",
       
"INSERT INTO Glue VALUES (100);",
       
"INSERT INTO Glue VALUES (200);",
       
"SELECT * FROM Glue WHERE id > 100;",
    ];

    for sql in sqls {
        let output = glue.execute(sql).unwrap();
        println!(
"{:?}", output)
    }
}