mirror of
https://gitee.com/pnoker/iot-dc3.git
synced 2026-10-28 02:11:40 +08:00
docs(db): align dialect documentation with postgres-only runtime
docs/README.md still advertised a three-dialect selection guide that db-dialects.md no longer contains, tsdb-abstraction.md documented a MySQL upsert branch that no longer exists, and the r2dbc-postgres README pointed at the removed dc3.db.type activation property.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
Maven module: `dc3-db-r2dbc-postgres`.
|
||||
|
||||
The only supported relational adapter. Activated by `dc3.db.type=postgres`,
|
||||
it registers the PostgreSQL dialect (identifier quoting, JSONB conventions)
|
||||
backed by the `r2dbc-postgresql` driver. Adding another engine requires a
|
||||
deliberate architecture change, not a new runtime switch.
|
||||
The only supported relational adapter. It registers the PostgreSQL dialect
|
||||
(identifier quoting, JSONB conventions) backed by the `r2dbc-postgresql`
|
||||
driver, unconditionally. Adding another engine requires a deliberate
|
||||
architecture change, not a new runtime switch.
|
||||
|
||||
+4
-4
@@ -32,10 +32,10 @@
|
||||
|
||||
### 1. [关系库选型指南](./db-dialects.md)
|
||||
|
||||
- **回答的问题**:PostgreSQL / MySQL / MariaDB 三方言怎么选,差异到底在哪。
|
||||
- **关键结论**:PostgreSQL 默认;MySQL 硬门槛 ≥8.0(窗口函数、CTE、SKIP LOCKED);MariaDB ≥10.6。
|
||||
- **最有用的一张表**:"现状矩阵"——upsert 三种方言形态(`ON CONFLICT` / `AS new` 行别名 / `VALUES(col)`)、RETURNING 已弃用、
|
||||
咨询锁(`pg_advisory_xact_lock` 事务级 vs `GET_LOCK` 会话级须 try/finally)、`operate_time` 触发器 vs 列属性、三方言契约套件 8/8。
|
||||
- **回答的问题**:为什么平台关系库只保留 PostgreSQL + R2DBC,单方言约束换来什么。
|
||||
- **关键结论**:PostgreSQL 18 是唯一支持的关系引擎(JSONB、CTE、RETURNING、TimescaleDB/pgvector 一站覆盖);方言选择器、
|
||||
MySQL/MariaDB 驱动与跨引擎 URL 已删除,未知配置在启动校验阶段直接失败。
|
||||
- **最有用的约束**:schema 指纹启动闸门——DDL 哈希不匹配拒绝启动,不做隐式降级或兼容迁移。
|
||||
|
||||
### 2. [时序存储选型指南](./tsdb-stores.md)
|
||||
|
||||
|
||||
@@ -81,8 +81,7 @@ Mono<Long> count(SeriesFilter filter, TimeWindow window, TsdbDeadline deadline);
|
||||
|
||||
1. `samples` 不得为 `null`、空或含 `null`,数量不得超过 `capabilities.maxAppendBatch`。
|
||||
2. 每个样本的租户、设备、点、driver identity、fencing token 和时间都经过正数/范围校验。
|
||||
3. PostgreSQL 使用 `ON CONFLICT`,MySQL 方言使用 `ON DUPLICATE KEY UPDATE`;两者都绑定全部参数,
|
||||
不拼接用户输入。
|
||||
3. Upsert 使用 `ON CONFLICT`,绑定全部参数,不拼接用户输入。
|
||||
4. 返回接受数量;任意行失败时整批失败,不返回部分成功。
|
||||
|
||||
### 读取不变量
|
||||
|
||||
Reference in New Issue
Block a user