php - 如何存储主表数据

标签 php mysql symfony

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

例如2018年类(class)列表

表格类(class)

id  name
1   Maths
2   Science

2019年类(class)列表

id  name
1   Social
2   Language

我们的设计

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

如何更好地设计这个表格。

最佳答案

这取决于您想要实现的目标。但根据您的问题详细信息,我可以假设您需要一个包含所有不同类(class)的表格。

类(class)

+-----------+---------+
| COURSE_ID |  NAME   |
+-----------+---------+
|         1 | Math    |
|         2 | Science |
+-----------+---------+

以及历史日志表

类(class)_年

+-----------+------+
| COURSE_ID | YEAR |
+-----------+------+
|         1 | 2018 |
|         1 | 2019 |
|         2 | 2019 |
+-----------+------+

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

第二个表只是您的类(class)历史记录的日志表。您有一个指向 course_id 的外键和一个基于两列的主键。

关于php - 如何存储主表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56143282/

相关文章:

php - Apache 2.4.23 PHP7.x Windows 10 x64 php_curl 不工作

php - 使用 INSERT INTO SELECT 和 VALUES MYSQL PDO

MySQL 计数该值是否之前没有出现过

mysql - jpa 标准按聚合值分组

symfony - 如何在 symfony2 中创建国际化的静态页面?

php - Symfony 中的序列化和反序列化

php - 如果 PHP 版本的条件忽略新代码

php - 如何在 MySQL 中创建两个相关表并使用 PHP 以 JSON 形式返回结果集?

symfony2 twig 渲染嵌套子目录

php - 如何在 symfony2 Controller 中迭代 ArrayCollection