控制休眠sql脚本运行
Posted
技术标签:
【中文标题】控制休眠sql脚本运行【英文标题】:controlling hibernate sql script run 【发布时间】:2015-06-23 19:39:42 【问题描述】:我使用的是 Spring 4.1.6,并且我的服务在 Hibernate 中运行良好。在项目的根目录中,我有我的 schema.sql,每次运行服务器时都会运行它。问题是我第一次运行服务器时,我在 db 中放了一些数据,当我重新启动它时,脚本再次执行,我丢失了我在重新启动之前加载的所有数据。
所以,我认为我有两个选择两个来解决这个问题:
-
编辑 sql 脚本以执行所有查询,以防万一它们不存在(这会更费力,因为我每次导出数据库时都必须编辑脚本)
通过某种方式告诉hibernate 只在某些情况下执行sql 脚本。如果存在一些执行脚本的配置以防万一数据库不存在,那就太好了。
你知道这是否可能吗?提前致谢。
【问题讨论】:
【参考方案1】:听起来这是一个名为Liquibase 的工具的完美用例。这基本上是您的数据库的版本控制工具,它允许您定义对架构和/或数据的更改,并确保这些更改只应用一次。
如果多人更改同一个数据库架构并确保您的数据库对于您已签出/发布的代码版本等始终有效,这将非常有用。
【讨论】:
我一直在搜索有关 liquibase 的信息,我发现并找到了更好的飞行路线。通过 Spring Boot 非常简单明了。无论如何,我接受你的回答,因为这也是一种可能性。谢谢!以上是关于控制休眠sql脚本运行的主要内容,如果未能解决你的问题,请参考以下文章