Spring Batch Framework-自动创建批处理表

我只是使用Spring Batch框架创建了一个批处理作业,但是我没有运行CREATE SQL的数据库特权。当我尝试运行批处理作业时,在框架尝试创建TABLE_BATCH_INSTANCE时遇到错误。我尝试禁用

<jdbc:initialize-database data-source="dataSource" enabled="false">    

...

</jdbc:initialize-database>

但是我尝试后仍然遇到错误

org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [SELECT JOB_INSTANCE_ID, JOB_NAME from BATCH_JOB_INSTANCE where JOB_NAME = ? and JOB_KEY = ?]; nested exception is java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist

无论如何都可以禁用SQL,我只想测试我的阅读器编写器和处理器是否正常工作。

回答:

使用Spring Boot 2.0,你可能需要以下代码:https : //docs.spring.io/spring-boot/docs/2.0.0.M7/reference/htmlsingle/#howto-initialize-a-spring-batch-database

spring.batch.initialize-schema=always

默认情况下,仅当你使用嵌入式数据库时,它才会创建表。

要么

 spring.batch.initialize-schema=never

永久禁用它。

以上是 Spring Batch Framework-自动创建批处理表 的全部内容, 来源链接: utcz.com/qa/433411.html

回到顶部