首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >删除并创建表太容易删除

删除并创建表太容易删除
EN

Stack Overflow用户
提问于 2012-05-04 18:41:54
回答 2查看 859关注 0票数 1

我刚把我的persistence.xml从

代码语言:javascript
运行
复制
<property name="toplink.ddl-generation" value="drop-and-create-tables"/>

代码语言:javascript
运行
复制
<property name="toplink.ddl-generation" value="create-tables"/>

现在,正如我所期望的那样,数据在应用程序运行之间持久化。然而,这并不是我所期望的这种设置的工作方式。drop-and-create不应该只在表丢失或不匹配时创建吗?

我只是想知道这是不是标准的,或者可能是我没有正确使用JPA的迹象,当设置了drop-and-create时,表太容易被not了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-04 18:51:32

这是有意的行为。

create-tables只会尝试创建表,如果表已经存在,则不会删除或替换它,而是使用现有的表。这不会检查该表是否与您尝试创建的表匹配-只检查具有给定名称的表是否存在。如果您的方案发生更改,您将不得不手动删除该表(或通过另一种机制),以便下次重新创建该表。

drop-and-create-tables将首先删除现有表,然后创建新表。请注意,当表被删除时,这将丢失表中的所有数据。

票数 1
EN

Stack Overflow用户

发布于 2012-05-04 18:49:35

是的,我认为你的观察是正确的。至少我也有同样的问题。如果你所描述的行为有另一种选择,那就太好了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10447275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档