Spring 引导应用程序无法从 data.sql 执行插入语句抛出异常 | table 未找到

Spring boot application unable to execute insert statement from data.sql thrrows exception | table not found

我正在尝试创建一个简单的 SpringDataJPA 应用程序。我正在使用 H2 数据库。在使用@entity 注释对模型 class 进行注释后,table 已在 H2 DB 中成功创建,并且可以通过 h2-console 查看。然而,为了初始化 table,我试图从 data.sql 中插入值,但是在启动应用程序时,错误指示未找到 table。为什么在我能够查看时找不到 table?

POM.xml

Model Class

application.properties

data.sql

Console output

Spring Boot 2.5.0 改变了 schema.sql 和 data.sql 的处理方式。

你必须设置

spring.jpa.defer-datasource-initialization=true

使您的示例有效。

请阅读https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto.data-initialization.using-basic-sql-scripts