Php 如何存储主表数据

Php 如何存储主表数据,php,mysql,symfony,Php,Mysql,Symfony,我参与了一个项目,其中有一个需要每年更新的主数据表 例如,2018年课程列表 表2课程 2019年课程表 id name 1 Social 2 Language 我们设计了什么 id name year 1 Maths 2018 2 Science 2018 3 Social 2018 4 Language 2018 如何以更好的方式设计此表。这取决于您想要实现的目标。但从你的问题细节来看,我可以假设你需要一个包含所有不同课程的表格 课程 和一

我参与了一个项目,其中有一个需要每年更新的主数据表

例如,2018年课程列表

表2课程

2019年课程表

id  name
1   Social
2   Language
我们设计了什么

id  name     year
1   Maths    2018
2   Science  2018
3   Social   2018
4   Language 2018

如何以更好的方式设计此表。

这取决于您想要实现的目标。但从你的问题细节来看,我可以假设你需要一个包含所有不同课程的表格

课程

和一个历史记录表

课程十年

第一个表是包含所有原子实体的主表。您有一个基于自动递增编号的主键,这是有问题的,但这是另一个问题,并且是对名称的唯一约束

第二个表只是课程历史记录的日志表。外键指向课程id,主键基于两列

id  name     year
1   Maths    2018
2   Science  2018
3   Social   2018
4   Language 2018
+-----------+---------+
| COURSE_ID |  NAME   |
+-----------+---------+
|         1 | Math    |
|         2 | Science |
+-----------+---------+
+-----------+------+
| COURSE_ID | YEAR |
+-----------+------+
|         1 | 2018 |
|         1 | 2019 |
|         2 | 2019 |
+-----------+------+