1 个不稳定版本

0.1.0 2021年8月7日

#2577数据库接口

Apache-2.0

160KB
3.5K SLoC

Cassandra 查询语言 (CQL) 解析器

手工制作的 Apache Cassandra CQL 解析器,用 Rust 实现。

警告:此库仍处于非常早期阶段,API 和 AST 将会更改。

设计目标

此库的目标是提供一个独立的 CQL 解析器,可用于工具,如格式化打印器、自动完成、模式可视化器等。

设计目标是

  • 最小依赖
  • 详细错误报告
  • WebAssembly 兼容
  • 完整且可验证的 AST
  • 支持 CQL 到 AST 和 AST 到 CQL
  • 解析多个语句

支持的 CQL 版本

实现的语句

  • SELECT 语句
    • SELECT JSON / DISTINCT 尚未实现
  • INSERT 语句
  • UPDATE 语句
  • BATCH 语句
  • DELETE 语句
  • USE 语句
  • TRUNCATE 语句
  • CREATE KEYSPACE 语句
  • CREATE TABLE 语句
  • CREATE INDEX 语句
  • DROP KEYSPACE 语句
  • DROP TABLE 语句
  • DROP INDEX 语句
  • ALTER TABLE 语句
  • ALTER KEYSPACE 语句
  • GRANT PERMISSIONS 语句
  • REVOKE PERMISSIONS 语句
  • LIST PERMISSIONS 语句
  • CREATE USER 语句(已弃用)
  • ALTER USER 语句(已弃用)
  • DROP USER 语句(已弃用)
  • LIST USERS 语句(已弃用)
  • CREATE TRIGGER 语句
  • DROP TRIGGER 语句
  • CREATE TYPE 语句
  • ALTER TYPE 语句
  • DROP TYPE 语句
  • CREATE FUNCTION 语句
  • DROP FUNCTION 语句
  • CREATE AGGREGATE 语句
  • DROP AGGREGATE 语句
  • CREATE ROLE 语句
  • ALTER ROLE 语句
  • DROP ROLE 语句
  • LIST ROLES 语句
  • GRANT ROLE 语句
  • REVOKE ROLE 语句
  • CREATE MATERIALIZED VIEW 语句
  • DROP MATERIALIZED VIEW 语句
  • ALTER MATERIALIZED VIEW 语句
  • DESCRIBE 语句

待办事项

  • 尚未支持绑定变量。

依赖项

~0–340KB