代码之家  ›  专栏  ›  技术社区  ›  Alejandro Lorefice

是否可以在不使用revinfo外键的情况下手动创建Envers审核表?

  •  0
  • Alejandro Lorefice  · 技术社区  · 7 年前

    在我当前的项目中,我使用envers5.2.12来审计实体变更。由于安全限制,我必须手动创建audit表和revinfo表,它们不能包含外键。如果我在没有外键引用的情况下创建它们,这会干扰Envers的正常行为吗?

    1 回复  |  直到 7 年前
        1
  •  2
  •   Naros    7 年前

    简而言之,Envers将在没有定义外键的情况下工作。

    这里的主要警告是,所有这些都假设所维护的数据在相关行之间保持一致,就像定义了外键一样。

    外键的目的是保证相关行之间的数据完整性。如果没有它们,您将永远不会意识到操作违反了该指令,当您注意到问题时,您的数据完整性可能会受到严重损害,最好从头开始。

    虽然enver(通常说大多数应用程序)可以在没有FK定义的情况下运行,但您可以 使用它们,因为它们实际上是任何关系数据库环境中的基石原则。