Oracle APEX - 数据建模和主键

Oracle APEX - Data Modeling & Primary Keys

我正在创建一个相当大的 APEX 应用程序,它允许经理进入并记录公司员工的统计数据。目前我们在 oracle 中有一个数据库,其中包含来自 AD 的数据,其中包含所有关联信息。姓名、经理、员工编号等

现在我负责创建和建模一个 table 来存放每个员工的所有统计数据。我创建的 table 中有超过 90 列。有些包含数据,例如:

并且该列表包含 90 多个属性。所以这是我的问题:

因为我是 APEX 和 DBA 设计的新手,所以我从亚马逊订购了两本关于数据建模的书。不是新鲜的鸡,但足够新,需要一些指导。我 运行 遇到的另一个问题是每个表单只能有 60 个字段。所以我考虑过为我 90 多岁的不同功能创建 tables。

谢谢

4.2 每页允许 200 个项目。

oracle apex component limits

我想到了几个问题:

  1. 您确定员工 ID 不可回收吗?如果这些 id 是唯一的并且没有被回收..你发现自己是一个很好的主键。
  2. 当您决定添加新指标时,您打算做什么?似乎您可能必须向相当大且可能未规范化的 table.
  3. 添加一个新列

我建议为您的指标使用垂直 table。您可以使用 oracle 的数据透视功能使您的数据看起来更像水平 table。

如果你走这条路,你会在一列中存储你的员工 ID,在另一列中存储你的指标键,以及值...

我建议您创建一个指标 table,其中包含主键、指标标签、活动指标、创建时间戳、创建用户 ID、修改时间戳、修改用户 ID。

此指标 table 将允许您添加新指标、更改指标名称、停用指标,以及确定谁在何时更改了什么内容。

在我看来,这是一种更加灵活的方法。您可能还想考虑审计日志。