【问题标题】:Is it possible to use data.sql without schema.sql是否可以在没有 schema.sql 的情况下使用 data.sql
【发布时间】:2020-03-27 16:34:48
【问题描述】:

我想使用 spring.jpa.generate-ddl=true 初始化架构,然后使用 data.sql 进行填充。

我试过了,但如果没有 schema.sql,它似乎无法工作。有什么建议吗?

【问题讨论】:

    标签: java spring spring-boot spring-data-jpa spring-data


    【解决方案1】:

    将以下配置添加到您的 application.propertiesapplication.yml 文件中:

    spring.jpa.hibernate.ddl-auto=create
    spring.datasource.initialization-mode=always
    

    如果表中有数据,请使用以下配置:

    spring.jpa.hibernate.ddl-auto=update
    spring.datasource.initialization-mode=always
    

    查看question 及其答案。

    【讨论】:

    • 我已经试过了。但是 data.sql 是在创建表之前执行的,所以它失败了
    • 我想我会改用 db 迁移
    • 嗨 Nasir,我已经了解了根本问题。并不是说它没有被执行。你肯定帮助我更好地理解了这个问题。
    【解决方案2】:

    spring.jpa.defer-datasource-initialization=true

    将在您的表生成后加载您的 data.sql 脚本。

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 2014-06-16
    • 2020-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多