1

我正在构建一个 PHP 应用程序来检查数据库中用户的生日。这些用户在生日时会获得各种礼物,他们可以从中挑选一个。我会跟踪他们挑选了哪些礼物,这样我就可以看到谁领取了礼物,谁还有礼物在等待。

此应用程序的目标群体是公司,他们为每位员工支付费用,这是此应用程序的一部分。该应用程序旨在使公司更容易记住员工的生日并表示他们的关心。

随着公司的发展/缩小,在招聘、解雇员工时,他们将每月更新员工名单,以便系统能够排除那些不再在那里工作的人并增加新员工。

现在我的问题是:我如何以最聪明的方式做到这一点?

如果我要删除以前与给定公司相关联的每个员工,在给定他们当前的员工名册时,并从头开始插入新列表,我将失去员工与数据库中未/认领礼物之间的关联。

另一方面,为了确保在我的数据库中保留关联,如果我只添加新员工并删除那些不再在名册上的员工,我将如何以最聪明的方式进行呢?

我在员工身上得到的字段是idfirstnamesurnameemail和。这些都不是识别用户是否已经在数据库中的好方法(可以争辩说电子邮件可能有效,但如果出于某种原因他们更改了它,它就不起作用了)birthdaycompany_id

任何建议都更受欢迎。

4

2 回答 2

3

最简单的答案是添加employee_id到您的数据库中。每家公司都有内部 ID,用于在其系统内部识别员工。这对于许多目的都是必要的,包括工资单、福利、出勤等。因此,您只需将此ID字段添加到您的employee表中,并确保您收到的花名册包含所有员工的这些 ID。

此外,您不必删除不再为公司工作的员工的条目,而可以只使用一个标志来指示该工作是否仍然有效。然后为您的查询添加相应的where子句。

于 2013-05-14T11:56:40.433 回答
2

您可以向表员工添加一个简单的字段:

employeeID | name | isStillHired

当一家公司解雇一名员工时,您以isStillHired这种方式设置为虚假字段,您不会丢失他的推荐信

于 2013-05-14T11:55:54.317 回答