clouddisk-project/architecture/database.md
Team f339513be8 团队工作进展:
- UI设计: 文件列表页 Draw.io 设计稿
- 架构: 数据库设计文档
- 后端: 用户认证接口实现 (login/register)

待完成:
- 前端 Electron 主进程开发
- 文件管理 API 开发
- 测试用例编写
2026-03-10 07:24:38 +00:00

1.7 KiB

数据库设计

表结构

users (用户表)

字段 类型 说明
id INTEGER PRIMARY KEY 用户ID
username VARCHAR(50) UNIQUE 用户名
password_hash VARCHAR(255) 密码哈希
email VARCHAR(100) 邮箱
created_at DATETIME 创建时间
updated_at DATETIME 更新时间
storage_used BIGINT 已用存储(字节)
storage_limit BIGINT 存储上限(字节)

files (文件表)

字段 类型 说明
id INTEGER PRIMARY KEY 文件ID
user_id INTEGER 所属用户ID
parent_id INTEGER 父文件夹ID
name VARCHAR(255) 文件名
type VARCHAR(20) 文件类型
size BIGINT 文件大小
path VARCHAR(500) 存储路径
hash VARCHAR(64) 文件哈希
is_folder BOOLEAN 是否文件夹
created_at DATETIME 创建时间
updated_at DATETIME 更新时间
deleted_at DATETIME 删除时间

shares (分享表)

字段 类型 说明
id INTEGER PRIMARY KEY 分享ID
file_id INTEGER 文件ID
share_token VARCHAR(64) 分享令牌
password VARCHAR(255) 访问密码
expires_at DATETIME 过期时间
view_count INTEGER 查看次数
created_at DATETIME 创建时间

sync_logs (同步日志)

字段 类型 说明
id INTEGER PRIMARY KEY 日志ID
user_id INTEGER 用户ID
file_id INTEGER 文件ID
action VARCHAR(20) 操作类型
status VARCHAR(20) 状态
created_at DATETIME 创建时间

索引

  • files: user_id, parent_id, hash
  • shares: share_token
  • sync_logs: user_id, created_at