提到
(
cargo test --workspace)。已落地 还有:目录 (字典表、DDL 写侧、行缓存)、表访问服务 (
bicdb-access)、SQL 前端 (词法/语法 → 绑定 → 物理计划 → 会话:
SELECT的过滤/聚合/GROUP BY·HAVING·DISTINCT/两表连接/集合运算/ORDER BY表达式,以及
INSERT·UPDATE·DELETE)、规则式索引访问路径 (等值 /IN/有界范围 / 连接的内表探测)、管理面 (
CREATE FILESYSTEM·CREATE WORKSPACE·
CREATE USER与口令散列)、本机口令认证 、只读固定表file$,以及可运行的 CLI (
bicdb init/sql/shell,见 快速上手)。仍待做:模板(reflink 快照)、认证后路由到主体自己的工作区、daemon 进程模型、
对外(TCP)协议与其认证,以及已登记的后备清单。内部设计/路线/证据包在
doc/,不随本镜像发布 。
试验语句,除了最后自己加的子查询,都可以执行。
sql
root@DESKTOP-59T6U68:/par/bicdb-main3# ./target/release/bicdb init ./demo2
已建区:./demo2
参数文件 ./demo2/bicdb.ini
工作区 ref 7c9fa136d4413fa6(标识 = SHA-256(工作区号) 前 8 字节)
日志组 2 组 × 1 成员 × 8192 页
日志 bicdb.log
注册表 (无 BICDB_HOME:未登记进实例注册表,`bicdb list` 看不到它)
下一步 bicdb start -p public
root@DESKTOP-59T6U68:/par/bicdb-main3# ./target/release/bicdb start -p public
bicdb:参数:找不到参数文件 bicdb.ini------试过:public;bicdb.ini;(用 `-p <参数文件|根区目录>` 指定,或设环境变量 BICDB_INI)
root@DESKTOP-59T6U68:/par/bicdb-main3# ./target/release/bicdb shell -p ./demo2
bicdb 0.2.0 ------ 实例 ./demo2(提交序号 1)
恢复:起点 LSN 14911,重放 0 块,回滚 0 个事务,续写位 15888
输入 SQL(`;` 结尾执行;`.quit` 退出,`.help` 帮助)
bicdb> create table(a int);
错误:语法错误(字节 12..13):期望名字
bicdb> create table t(a int);
CREATE TABLE t(1 列)
bicdb> insert into t values(1),(2);
影响 2 行
bicdb> select * from t;
a
-
1
2
(2 行)
bicdb> delete from t where a=1;
影响 1 行
bicdb> update t set a=1;
影响 1 行
bicdb> select * from t;
a
-
1
(1 行)
bicdb> select sum(a) from t;
sum
---
1
(1 行)
bicdb> select sum(a) from t group by a;
sum
---
1
(1 行)
bicdb> select * from t,t t1;
a | a
--+--
1 | 1
(1 行)
bicdb> select * from t union all select * from t;
a
-
1
1
(2 行)
bicdb>
bicdb> select (select sum(a) from t) from t;
错误:语法错误(字节 8..14):不支持子查询(REQ-SQL-006)