gpt4 book ai didi

hibernate - Play Framework 2.4 中的 Play Evolutions 和 JPA

转载 作者:行者123 更新时间:2023-12-04 12:57:47 25 4
gpt4 key购买 nike

我将 Play 项目从版本 2.3.4 迁移到 2.4.2。这些项目使用 JPA(Hibernate)和 Evolutions。我有一个初始的 Evolutions SQL 脚本,它用一些示例数据填充数据库。这个脚本现在不再工作了,因为 Evolutions 脚本现在在 Hibernate 生成表之前执行,这显然会导致错误。这是一种理想的行为吗?有什么办法可以改变执行顺序吗?

最佳答案

进化是关于通过普通 SQL 脚本创建和更新数据库。所以如果你使用一些自己生成数据表的框架,比如hibernate,那么你需要关闭evolutions(或者关闭自动生成并只使用evolutions)

启动时填充数据库

我在 Cassandra 上有一个类似的问题,我所做的 - 只需创建一个读取 CQL 文件并执行它的代码,然后在创建实际数据表后运行此代码。

正如我看到的 Hibernate 已经有这个功能 - 您需要将自定义 SQL 代码放入 /import.sql类路径根目录中的文件:

If a file named import.sql exists in the root of the class path ('/import.sql') Hibernate will execute the SQL statements read from the file after the creation of the database schema.

关于hibernate - Play Framework 2.4 中的 Play Evolutions 和 JPA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31502061/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com