小编lin*_*sek的帖子

数据库规范化 - 一个字段可以指向另一个吗?

这听起来像是一个愚蠢的问题,但我是一名刚接触数据库设计的软件开发人员......所以这个概念对我来说很有意义,但也许这并不适用——

表 B 中记录中的字段是否可以简单地指向表 A 中记录中的字段?

示例:如果我有两个表……一个包含所有员工的列表,另一个包含这些员工进出办公室的历史记录。

Employees
    ID
    First Name
    Last Name

History
    Event ID
    Event Time
    Event Type (Entry/Exit)
    EmployeeID
Run Code Online (Sandbox Code Playgroud)

我可以使用外键在 History.EmployeeID 和 Employees.ID 之间建立关系,但会重复数据。那么 History.EmployeeID 和 Employees.ID 将包含相同的 ID 号,它们将在内存中存储两次。因此,如果我进入数据库并更改了 John Smith 的员工 ID,则需要编写脚本或其他内容来搜索数据库并查找/替换该 ID。

我想要的是Employees.ID 包含真实ID 和History.EmployeeID 只包含一个指向Employees.ID 的指针。这样,如果我更新 John Smith 的 ID,更改将集中到一张表中的一个字段。

这可能吗?

谢谢

mysql normalization database-design

3
推荐指数
2
解决办法
2590
查看次数

标签 统计

database-design ×1

mysql ×1

normalization ×1