mirror of
https://github.com/Vb-Lg/class-history-template.git
synced 2026-11-03 18:46:40 +00:00
feat(api): auto-create and migrate messages table on first request
ensureSchema runs idempotent CREATE TABLE / ALTER TABLE (skipping duplicate-column errors), cached once per isolate with retry on failure; schema.sql becomes reference-only documentation
This commit is contained in:
1 parent
ca422df0c3
commit
4b489a3ebb
2 files changed
+46
-7
No files matched your search
+3
-6
@@ -1,7 +1,8 @@
|
||||
-- D1 数据库结构(留言墙 /api/messages 使用,绑定名 DB)
|
||||
--
|
||||
-- 全新部署:直接执行下面的 CREATE TABLE。
|
||||
-- 已有部署:老表缺少 ua / country 列时,执行文件末尾注释里的 ALTER TABLE。
|
||||
-- 无需手动执行:Functions 首次访问会自动建表并为旧表补齐缺失的列
|
||||
-- (见 functions/api/messages.js 的 ensureSchema)。本文件仅作结构参考,
|
||||
-- 需要手工干预(如排查问题)时再执行。
|
||||
|
||||
CREATE TABLE IF NOT EXISTS messages (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
@@ -13,7 +14,3 @@ CREATE TABLE IF NOT EXISTS messages (
|
||||
country TEXT, -- 国家/地区代码,来自 CF-IPCountry(审计)
|
||||
created_at INTEGER NOT NULL -- Unix 秒,排序与限流用
|
||||
);
|
||||
|
||||
-- 已有部署的增量迁移:
|
||||
-- ALTER TABLE messages ADD COLUMN ua TEXT;
|
||||
-- ALTER TABLE messages ADD COLUMN country TEXT;
|
||||
Reference in new issue
Block a user