GlueSQL Rust 编写的 SQL 数据库引擎开源项目

我要开发同款
白开水不加糖2021年09月15日
95阅读
开发技术Rust
所属分类数据库相关
授权协议Apache-2.0

作品详情

GlueSQL是一个用Rust编写的SQL数据库库。它提供了一个解析器(sqlparser-rs)、执行层和可选的存储(sled)打包成一个库。开发者可以选择使用GlueSQL来建立他们自己的SQL数据库,或者作为一个使用默认存储引擎的嵌入式SQL数据库。 你可以将GlueSQL作为一个嵌入式SQL数据库。GlueSQL提供sled作为默认的存储引擎。 usegluesql::*;fnmain(){letstorage=SledStorage::new("data/doc-db").unwrap();letmutglue=Glue::new(storage);letsqls=vec!["DROPTABLEIFEXISTSGlue;","CREATETABLEGlue(idINTEGER);","INSERTINTOGlueVALUES(100);","INSERTINTOGlueVALUES(200);","SELECT*FROMGlueWHEREid>100;",];forsqlinsqls{letoutput=glue.execute(sql).unwrap();println!("{:?}",output)}}

 GlueSQL目前支持一个有限的查询子集。它正在积极开发中。

CREATETABLE有8种类型:INTEGER,FLOAT,BOOLEAN,TEXT,DATE,TIMESTAMP,TIME和INTERVAL。ALTERTABLE有4个操作:ADDCOLUMN,DROPCOLUMN,RENAMECOLUMN和RENAMETO。CREATEINDEX, DROPINDEXINSERT, UPDATE, DELETE, SELECT, DROPTABLEGROUPBY, HAVINGORDERBY事务查询:BEGIN,ROLLBACK和COMMIT嵌套选择、连接、聚合...可以在 src/tests/*中查看当前支持的查询的测试。

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论