【问题标题】:Recreating table structure with JPA使用 JPA 重新创建表结构
【发布时间】:2012-02-22 21:05:26
【问题描述】:

这很简单——我怎样才能让我的数据库(我正在使用 Derby)提交实体中的更改(我的意思是更改列名、约束等)?因为我发现当我更改实体属性中的某些内容时,我的数据库仍然保持不变。如果有任何功能,我也在使用 Netbeans。

我现在知道 hibernate.hbm2ddl.auto,但我正在寻找类似的东西(例如,我不想在从实体到 DB 的结构更改期间删除日期)

【问题讨论】:

    标签: java jpa derby


    【解决方案1】:

    你没有指定你的持久化提供者,但我假设是休眠的;您可以使用hibernate.hbm2ddl.auto 配置参数来告诉hibernate 重新创建表。见this SO question for more details。请注意,您不应在生产中使用它; see this SO question for those details.

    【讨论】:

    • 不,我正在使用 EclipseLink。好吧,经过一番谷歌搜索,我看到我应该将 eclipselink.ddl-generation 设置为 drop-and-create-tables,但我也会丢失我的数据,那么还有其他方法吗?
    • 我没用过EclipseLink;在休眠中,您可以将hibernate.hbm2ddl.auto 设置为update,如第二个链接中所述,但我从未尝试过。这不安全;如果您需要它用于测试/开发目的,您可以尝试使用 DBUnit; this blog post有教程。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-26
    • 2019-07-09
    • 2018-01-17
    • 2023-03-21
    • 2017-02-20
    • 1970-01-01
    相关资源
    最近更新 更多