Skip to content

Commit

Permalink
feat: 更新文档表结构和约束
Browse files Browse the repository at this point in the history
根据最近的代码更改,更新了文档表的结构和约束,包括添加了新的数据列和外键约束。
  • Loading branch information
XiaoLFeng committed May 25, 2024
1 parent e98e168 commit f612fab
Showing 1 changed file with 43 additions and 8 deletions.
51 changes: 43 additions & 8 deletions docs/设计文档/数据库设计文档.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,15 +106,50 @@
### 数据列

| 列名 | 数据类型 | 约束 | 描述 | 是否为空 | 键约束 | 级联修改 | 级联删除 |
|-------------|--------------|-----------------|---------------------------------|----------|----------|----------|----------|
| vuuid | varchar(32) | PRIMARY KEY | 会员主键,用于唯一标识会员 || fy_vip_pk | | |
| name | varchar(30) | NOT NULL | 会员名称,用于内部识别 || | | |
| display_name | varchar(30) | NOT NULL | 展示名字,用于用户界面显示 || | | |
| price | decimal(10, 2) | NOT NULL | 价格,单位为货币单位,如元或美元 || | | |
| description | varchar | NOT NULL | 会员描述,详细说明会员的权益和服务 || | | |
| updated_at | timestamp | DEFAULT now() | 更新时间,自动设置为当前时间 || | | |
| 列名 | 数据类型 | 约束 | 描述 | 是否为空 | 键约束 | 级联修改 | 级联删除 |
| ------------ | -------------- | ------------- | ---------------------------------- | -------- | --------- | -------- | -------- |
| vuuid | varchar(32) | PRIMARY KEY | 会员主键,用于唯一标识会员 || fy_vip_pk | | |
| name | varchar(30) | NOT NULL | 会员名称,用于内部识别 || | | |
| display_name | varchar(30) | NOT NULL | 展示名字,用于用户界面显示 || | | |
| price | decimal(10, 2) | NOT NULL | 价格,单位为货币单位,如元或美元 || | | |
| description | varchar | NOT NULL | 会员描述,详细说明会员的权益和服务 || | | |
| updated_at | timestamp | DEFAULT now() | 更新时间,自动设置为当前时间 || | | |

### 索引

- **fy_vip_name_uindex**: `name` 列的唯一索引,确保每个会员的名称在整个表中是唯一的

## fy_document

> **描述**:文档表,用于存储用户创建的文档,包括文档的 UUID、用户关联、类型、密码、合作者、格式以及创建和修改时间。
### 数据列

| 列名 | 数据类型 | 约束 | 描述 | 是否为空 | 键约束 | 级联修改 | 级联删除 |
| ----------- | ----------- | ------------- | ------------------------------------------- | -------- | --------------------------- | -------- | -------- |
| doc_uuid | varchar(32) | PRIMARY KEY | 文档表 UUID,对应 BOS 文档 UUID || fy_document_pk | | |
| uuid | varchar(32) | FOREIGN KEY | 所属用户,引用 fy_user 表的 uuid || fy_document_fy_user_uuid_fk | cascade | cascade |
| type | smallint | NOT NULL | 类型,0:私有,1:链接私有(需要Key),2:公开 || | | |
| key | varchar(64) | | 文档密码,用于私有文档访问控制 || | | |
| cooperation | varchar | | 合作者,JSON 存储用户 UUID 列表 || | | |
| suffix | varchar(20) | DEFAULT 'md' | 文档格式,如.md、.docx等 || | | |
| created_at | timestamp | DEFAULT now() | 创建时间 || | | |
| updated_at | timestamp | | 修改时间 || | | |

### 外键约束

- **fy_document_fy_user_uuid_fk**: `uuid` 列引用 `fy_user` 表的 `uuid` 列,更新和删除时级联

### 数据结构

#### cooperation

> **描述**: 存储合作者的 JSON 列,每个元素是用户 UUID
```json
[
"b534e8a823253ec08cbb155d680240f2",
"b534e8a823253ec08cbb155a864f25db",
......
]
```

0 comments on commit f612fab

Please sign in to comment.