GlueSQL是一个用Rust编写的SQL数据库库。它提供了一个解析器(sqlparser-rs)、执行层和可选的存储(sled)打包成一个库。开发者可以选择使用GlueSQL来建立他们自己的SQL数据库,或者作为一个使用默认存储引擎的嵌入式SQL数据库。 你可以将GlueSQL作为一个嵌入式SQL数据库。GlueSQL提供sled作为默认的存储引擎。 usegluesql::*;fmai(){letstorage=SledStorage::ew("data/doc-db").uwrap();letmutglue=Glue::ew(storage);letsqls=vec!["DROPTABLEIFEXISTSGlue;","CREATETABLEGlue(idINTEGER);","INSERTINTOGlueVALUES(100);","INSERTINTOGlueVALUES(200);","SELECT*FROMGlueWHEREid>100;",];forsqlisqls{letoutput=glue.execute(sql).uwrap();pritl!("{:?}",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/*中查看当前支持的查询的测试。









评论