我最近遇到过这个问题。我不确定它是来自HikariCP还是Oracle或Spring Boot。当我尝试使用datasource.schema(application.yml / application.properties)中的模式时,我收到一个错误。 HikariCP启动但立即失败,说不存在属性模式。现在我们如何在oracle数据库中使用模式?
驱动程序类名:oracle.jdbc.pool.OracleDataSource - ojdbc-7
main] com.zaxxer.hikari.HikariDataSource:HikariPool-1 - 已开始。
main] com.zaxxer.hikari.util.PropertyElf:属性架构没有 存在于目标类oracle.jdbc.pool.OracleDataSource
上
(我知道我无法为HikariCP设置架构!但现在怎么办?)
是否可以使用HikariCP使用模式(别名)连接到oracle数据库?
对于那些想知道HikariCP的人: https://github.com/brettwooldridge/HikariCP学习的好地方。
答案 0 :(得分:0)
的解决方案!
HikariCP采用ConnectionInitSql属性,我们可以将其设置为:
ConnectionInitSql = alter session set current_schema = xyz(您的架构名称)
public DataSource datasource(DataSourceProperties dataSourceProperties){
HikariDataSource ds = new HikariDataSource();
ds.setJdbcUrl(dataSourceProperties.getUrl());
ds.setUsername(dataSourceProperties.getUsername());
ds.setPassword(dataSourceProperties.getPassword());
ds.setConnectionInitSql("alter session set current_schema=My_Schema");
return new HikariDataSource(ds);
}