feat(db2): Users 管理员标记 + Notes 可见性/可编辑性(patch_003)
- create_sqlite3.sql 全量建库脚本同步 is_admin / is_public / everyone_editable 三列 - 新增 patch_003_users_admin_notes_visibility.sql 存量库增量迁移 - 默认值保持向后兼容:非管理员、节点公开、人人可编辑
This commit is contained in:
1 parent
2ea3fa14d8
commit
0ed03ac095
2 files changed
+26
-3
No files matched your search
@@ -7,7 +7,8 @@ CREATE TABLE IF NOT EXISTS Users (
|
||||
password_hash TEXT NOT NULL,
|
||||
create_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
||||
last_login DATETIME,
|
||||
is_active BOOLEAN DEFAULT 1
|
||||
is_active BOOLEAN DEFAULT 1,
|
||||
is_admin BOOLEAN NOT NULL DEFAULT 0
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS Notes (
|
||||
@@ -18,14 +19,19 @@ CREATE TABLE IF NOT EXISTS Notes (
|
||||
content TEXT NOT NULL,
|
||||
views INTEGER NOT NULL DEFAULT 0,
|
||||
created_at DATETIME,
|
||||
updated_at DATETIME
|
||||
updated_at DATETIME,
|
||||
is_public BOOLEAN NOT NULL DEFAULT 1,
|
||||
everyone_editable BOOLEAN NOT NULL DEFAULT 1
|
||||
);
|
||||
|
||||
-- 旧版增量
|
||||
-- 旧版增量(存量库请按编号顺序执行对应 patch 脚本)
|
||||
-- ALTER TABLE Notes ADD COLUMN owner VARCHAR(128) DEFAULT 'Unknow';
|
||||
-- ALTER TABLE Notes ADD COLUMN views INTEGER NOT NULL DEFAULT 0; -- patch_001 观看人数列
|
||||
-- ALTER TABLE Notes ADD COLUMN created_at DATETIME; -- patch_002 创建时间
|
||||
-- ALTER TABLE Notes ADD COLUMN updated_at DATETIME; -- patch_002 更新时间
|
||||
-- ALTER TABLE Users ADD COLUMN is_admin BOOLEAN NOT NULL DEFAULT 0; -- patch_003 管理员标记
|
||||
-- ALTER TABLE Notes ADD COLUMN is_public BOOLEAN NOT NULL DEFAULT 1; -- patch_003 是否公开(默认公开)
|
||||
-- ALTER TABLE Notes ADD COLUMN everyone_editable BOOLEAN NOT NULL DEFAULT 1; -- patch_003 是否人人可编辑(默认人人可编辑)
|
||||
|
||||
-- Notes 索引:get_notes 按 pid 查子节点、所有权校验按 owner(patch_001 并入)
|
||||
CREATE INDEX IF NOT EXISTS idx_notes_pid ON Notes(pid);
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
-- 补丁 003:Users 管理员标记 + Notes 可见性/可编辑性
|
||||
-- 数据库类型: SQLite
|
||||
-- 依赖: create_sqlite3.sql(或等价 schema)已执行,且 patch_001 / patch_002 已按序执行
|
||||
-- 幂等性: ADD COLUMN 为一次性迁移,重复执行会报 "duplicate column name",
|
||||
-- 请按迁移编号顺序执行一次。
|
||||
--
|
||||
-- 语义(默认值向后兼容现有行为):
|
||||
-- Users.is_admin 是否管理员,默认 0(普通用户)
|
||||
-- Notes.is_public 节点是否公开可读,默认 1(公开,与现状一致)
|
||||
-- Notes.everyone_editable 是否任何人都能编辑,默认 1(人人可编辑)
|
||||
|
||||
-- ── Users 新增管理员标记 ─────────────────────────────────────────────
|
||||
ALTER TABLE Users ADD COLUMN is_admin BOOLEAN NOT NULL DEFAULT 0;
|
||||
|
||||
-- ── Notes 新增可见性 / 可编辑性 ──────────────────────────────────────
|
||||
ALTER TABLE Notes ADD COLUMN is_public BOOLEAN NOT NULL DEFAULT 1;
|
||||
ALTER TABLE Notes ADD COLUMN everyone_editable BOOLEAN NOT NULL DEFAULT 1;
|
||||
Reference in new issue
Block a user