>>No.68811907
我整理完
TABLE post -- 存储所有post,包括串首,特别地,串首page_num = 0
-- post表只会发生插入,不会发生删除或更改
thread_id, INT -- 串首串号
id, INT -- 本条post串号,全局唯一,特别地,串首id = thread_id
cookie, CHAR(7)
page_num, INT -- 保持岛原有页码结构,不会发生更改
is_po, BOOL
is_sage, BOOL
is_admin, BOOL
created_at, UINT
PRI(thread_id, id) -- 用于快速访问串内所有post
KEY(thread_id, page_num) -- 用于串内随机访问某页
KEY(thread_id, cookie) -- 用于串内查找某个cookie的发言
KEY(cookie, id) -- 用于查找某个cookie的所有发言
KEY(id) -- 用于快速获取引用
TABLE thread -- 存储所有串首数据
thread_id, INT
cookie, CHAR(7)
replies, INT -- 该串首下的回复数量
is_sage, BOOL
is_admin, BOOL
installment, DECIMAL -- 展示用的系列内写作顺序,可能有间章
created_at, UINT
PRI(thread_id)
KEY(cookie) -- 用于查找某个cookie发的所有串
KEY(replies) -- 按热度排序
KEY(created_at) -- 按发布时间排序
KEY(cookie, created_at) -- 某个cookie发布的串按发布时间排序
TABLE post_content
id, INT
thread_id, INT
cookie, CHAR(7) -- 用于可能的以后manticore建立倒排索引
content, TEXT
img, VARCHAR(128) -- 图片在本地存储的相对位置
title, VARCHAR(64)
name, VARCHAR(64)
created_at, UINT
PRI(thread_id, id) -- 内容按串在磁盘上邻近排列便于读取
KEY(id) -- 用于快速获取引用
TABLE thread_content -- 用于可能的以后manticore只检索串首的功能
thread_id, INT
cookie, CHAR(7)
content, TEXT
img, VARCHAR(128)
title, VARCHAR(64)
name, VARCHAR(64)
created_at, UINT
PRI(thread_id)
TABLE tag_registry
tag_id, INT
tag_type, VARCHAR(64) -- 如“serie”、“status”
tag_name, VARCHAR(64) -- 如“大洛山系列”、“连载”
PRI(tag_id) AI
UNI(tag_type, tag_name)
TABLE thread_tag
thread_id, INT
tag_id, INT
tag_type, VARCHAR(64)
single_type, VARCHAR(64) VIRTUAL
/*
single_type VARCHAR(64) GENERATED ALWAYS AS (
CASE
WHEN tag_type = 'CUSTOM_TAG' THEN NULL
ELSE tag_type
END
) VIRTUAL
*/
PRI(thread_id, tag_id)
UNI(thread_id, single_type)
KEY(tag_id, thread_id)
然后才想起来
1.我们是不是还该做一个屏蔽某个cookie的功能
2.写完就忘了,待会想起来再说