| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- -- 用户表:记录每个独立设备(下载用户统计)
- CREATE TABLE IF NOT EXISTS users (
- uuid TEXT PRIMARY KEY,
- ip_hash TEXT NOT NULL,
- first_seen TEXT NOT NULL DEFAULT (datetime('now')),
- last_seen TEXT NOT NULL DEFAULT (datetime('now'))
- );
- -- 会话表:记录 open/close 事件(在线人数统计)
- CREATE TABLE IF NOT EXISTS sessions (
- id INTEGER PRIMARY KEY AUTOINCREMENT,
- uuid TEXT NOT NULL,
- open_time TEXT NOT NULL DEFAULT (datetime('now')),
- close_time TEXT,
- last_active TEXT NOT NULL DEFAULT (datetime('now')),
- is_online INTEGER NOT NULL DEFAULT 1
- );
- -- 每日统计快照
- CREATE TABLE IF NOT EXISTS daily_stats (
- date TEXT PRIMARY KEY,
- new_users INTEGER NOT NULL DEFAULT 0,
- total_users INTEGER NOT NULL DEFAULT 0,
- peak_online INTEGER NOT NULL DEFAULT 0
- );
- -- 反馈表:记录设置页提交的问题与建议
- CREATE TABLE IF NOT EXISTS feedback (
- id INTEGER PRIMARY KEY AUTOINCREMENT,
- type TEXT NOT NULL,
- message TEXT NOT NULL,
- contact TEXT,
- app_version TEXT,
- user_agent TEXT,
- ip_hash TEXT,
- created_at TEXT NOT NULL DEFAULT (datetime('now'))
- );
- -- 索引:加速在线人数查询
- CREATE INDEX IF NOT EXISTS idx_sessions_online ON sessions(is_online) WHERE is_online = 1;
- CREATE INDEX IF NOT EXISTS idx_sessions_uuid ON sessions(uuid);
- CREATE INDEX IF NOT EXISTS idx_users_ip_hash ON users(ip_hash);
- CREATE INDEX IF NOT EXISTS idx_feedback_created_at ON feedback(created_at DESC);
|