不创建春批表也不例外 [英] No Exception when Spring batch tables are not created
本文介绍了不创建春批表也不例外的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果未创建BATCH_JOB_EXECUTION_CONTEXT,我得到的只有:
原因:SQLPreparedStatementCallback;错误的org.springframework.jdbc.BadSqlGrammarException:语法[INSERT INTO BATCH_JOB_EXECUTE_CONTEXT(SHORT_CONTEXT,SERIALIZED_CONTEXT,JOB_EXECUTION_ID)值(?,?,?)];嵌套异常为java.sql.SQL语法错误异常:ORA-00942:表或视图不存在
插入表时显示上述错误,但在创建表时(由Spring Batch自动完成)未显示错误。
我想知道没有创建表的原因,这样我就可以知道问题是什么(数据库权限、表空间问题.)是否可以将其记录在跟踪中?有关我使用的Oracle数据库12C和ojdbc8版本12.2.0.1的信息
推荐答案
Spring Batch不会自动在您的数据源中创建元数据表。您需要手动对数据库运行tables creation script。
但是,如果使用Spring Boot,则可以使用spring.batch.initialize-schema
属性自动创建这些表。此处提供更多详细信息:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-initialize-a-spring-batch-database
与此问题类似/相关的问题,我在此添加以供参考:
- Spring Batch Framework - Auto create Batch Table
- Spring Batch doesn't use custom datasource to create tables
这篇关于不创建春批表也不例外的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文