【问题标题】:What will happen? If I use maximum no of primary keys in Oracle table会发生什么?如果我在 Oracle 表中使用最大数量的主键
【发布时间】:2014-02-21 10:19:31
【问题描述】:

如果我在 oracle 中使用了超过 10 个主键,那么对此会有什么影响?是否存在任何存储或性能问题。请解释一下。

提前致谢

【问题讨论】:

  • 你会在实际应用中面临这种假设情况吗?
  • 是的,在我的业务逻辑中有这种情况。
  • 好吧,那么,如果你需要它,就去做吧。当您实际遇到任何问题时,请稍后优化您的系统。过早的优化是万恶之源。
  • 这意味着只有你的主要 kry 值占用超过 100GByte 的表空间 - 祝你好运!
  • 但在此之前,我只想澄清一下这个问题。所以我提出了它。

标签: oracle oracle11g


【解决方案1】:

肯定会影响性能。 主键总是被索引的,所以它会加速 DB 读取操作(数据检索)但是它会影响记录插入。

【讨论】:

    【解决方案2】:

    一张表上不能有多个主键(根据定义)。你的意思是你有一个由 10+ 列组成的主键?如果是这样,您可以使用序列生成器来设计代理键,并在 10 列上保持唯一约束(以便它们在插入时不能重复)。当然,您的插入仍然需要检查约束。

    一般而言,您的表格应通过规范化表格结构来设计以避免此类事情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-02
      • 1970-01-01
      • 2020-10-03
      • 2014-05-18
      相关资源
      最近更新 更多