【问题标题】:hbm2ddl.auto is update but still creating the table in the databasehbm2ddl.auto 已更新,但仍在数据库中创建表
【发布时间】:2016-04-22 14:39:55
【问题描述】:

当我第一次在 cfg.xml 文件中创建 Hibernate 应用程序时,将属性 hbm2ddl.auto 声明为 update ,但它仍在创建表而不是抛出异常“表/视图不退出”

属性名称="hbm2ddl.auto" 更新

根据值“update”,如果表已经存在,则必须更新数据,并且不应在 DB(oracle) 中创建表。

但是,在我的情况下,我声明“更新”并且数据库中不存在表,而是创建表而不是抛出异常。

有人可以建议我吗?

【问题讨论】:

    标签: hibernate


    【解决方案1】:

    “更新”的值仍会更新架构(并将继续创建您的表)。完全删除 hibernate.hbm2ddl.auto 可能会完成您正在寻找的内容。

    查看此人以获取有关其他值的更多信息: Hibernate hbm2ddl.auto possible values and what they do?

    【讨论】:

    • 我同意,通过删除 hbm2ddl.auto 我们可以实现,但我担心的是如果值是更新它不应该在数据库中创建表,那么为什么它仍然在数据库中创建表?
    【解决方案2】:

    如果您希望 Hibernate 对您的架构不执行任何操作,请将 hbm2ddl.auto 设置为 none

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-25
      • 1970-01-01
      • 1970-01-01
      • 2019-06-16
      • 1970-01-01
      • 1970-01-01
      • 2013-05-22
      相关资源
      最近更新 更多