关于在考勤中使用主键的说明 table

Clarification on the use of primary keys on an attendance table

我只需要关于某个数据库的一些说明或建议table。它具有以下字段; -ID (PK) -员工ID(FK) -日期 -时间输入 -超时

这个table存储员工每天的上班和下班时间。现在,我读到所有 table 都应有一个唯一标识记录的主键。但是

实际上不能没有 "ID" 因为我认为它没有用,如果我需要某个人在某个特定日期的特定出席我可以使用 "employeeID"字段及其日期。

有没有关于 table 的建议,或者我只是想多了,现在还不错吗?

你的推理很有道理。

两个想法:

  • 虽然主键可以是复合键(即有多列),但许多人喜欢单列主键(通常 "surrogate keys" 基于人工计数器没有任何 "business meaning")。如果使用数据库的代码可以假设一个简单的字符串或数字总是标识一条记录,那确实会使事情变得更容易。看到这个 thread for a discussion.

  • 也许您想支持人们每天多次上下班。