gpt4 book ai didi

java - 如何检查嵌入式数据库是否存在?

转载 作者:行者123 更新时间:2023-11-30 03:47:59 25 4
gpt4 key购买 nike

我想使用带有嵌入式 h2 数据库的 Spring-Batch 来保存批处理作业中的元数据。

我只想在每个应用程序启动时始终运行数据库脚本,因此如果移动应用程序,我不必担心丢失数据库文件。

但是我如何检查脚本是否必须运行?因为如果我运行它并且数据库已经存在,我会收到以下异常:

org.h2.jdbc.JdbcSQLException:表“BATCH_JOB_INSTANCE”已存在

DataSourceInitializer init = new DataSourceInitializer();
init.setDataSource(embeddedDB); //embedded h2 db
ResourceDatabasePopulator populator = new ResourceDatabasePopulator();
populator.addScript(resource); //"classpath:org/springframework/batch/core/schema-h2.sql"
initializer.setDatabasePopulator(populator);

最佳答案

使用ResourceDatabasePopulator.setContinueOnError()属性(property)

Flag to indicate that all failures in SQL should be logged but not cause a failure.Defaults to false

关于java - 如何检查嵌入式数据库是否存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25140789/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com