【发布时间】:2020-03-18 05:28:53
【问题描述】:
我有不同的数据库连接,但其中的表相同。因此,为了重用这些实体类,我必须动态获取模式名称。试图在属性文件和数据源中设置架构但不工作。
application.properties 文件:
spring.datasource1.url=jdbc:db2://localhost:5054/AB01
spring.datasource1.username=abc
spring.datasource1.password=abc
spring.datasource1.driver-class-name=com.ibm.db2.jcc.DB2Driver
spring.datasource1.testWhileIdle=true
spring.datasource1.validationQuery=SELECT 1
尝试如下在属性文件中设置架构并得到错误“不支持 DDM 参数值。DDM 参数代码点的值不受支持:0x2110。”错误。
spring.datasource.url=jdbc:db2://localhost:5054/AB01?currentSchema=schema
spring.datasource.url=jdbc:db2://localhost:5054/AB01?search_path=schema
spring.datasource.url=jdbc:db2://localhost:5054/AB01?searchpath=schema
在配置类中也尝试过类似下面的方法,但不起作用。
public DataSource dataSource() {
DriverManagerDataSource ds = new DriverManagerDataSource(databaseURL, username, pwd);
ds.setDriverClassName(driverClassName);
Properties connectionProperties = new Properties();
connectionProperties.setProperty("spring.datasource.schema", "schema");
ds.setConnectionProperties(connectionProperties);
return ds;
}
【问题讨论】:
-
你看到这个答案了吗:stackoverflow.com/questions/24278659/…
-
如果你使用 jdbc,试试这个:spring.datasource.jdbc-url=jdbc:db2://localhost:5054/AB01:currentSchema=YOURSCHEMA;
-
这样尝试,得到 Invalid database URL syntax error
标签: database hibernate spring-boot jpa db2