系统中已有两种用户分属两个不同的表,这两种用户都可以做某个操作,这个操作需要记录到数据表中
比如学生和教师
- 学生表
| id | name | … |
| 学生 ID | 学生名 | 其他学生字段 |
- 教师表
| id | name | … |
| 教师 ID | 教师名 | 其他教师字段 |
这个操作的数据表结构下面两种哪种相对好些
- 某个操作的记录表
- 第一种
当学生做了这个操作后,就把学生 ID 填到 student_id 字段,teacher_id 字段填 null 或 0 ;反过来就是 teacher_id 填教师 ID,student_id 填 null 或 0
| id | student_id | teacher_id |
| 记录 ID | 学生 ID | 教师 ID |
- 第二种
| id | user_type | user_id |
| 记录 ID | 填 1 表示 user_id 是学生 ID ;填 2 表示 user_id 是教师 ID | 用户 ID,这里填的可能是学生 ID 或教师 ID |