数据库 – 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 Batch使用数据库来保存其恢复/重试功能的元数据.

如果无法在数据库中创建表,则为you have to disable this behaviour

如果您可以创建批处理元数据表但不能在运行时创建,则可能是create them manually

上一篇:Ubuntu 配置MySQL远程连接


下一篇:解决navicat连接Linux mysql出现1045问题