db2 jdbc连接字符串中 指定currentSchema

场景:连接DB2数据库的,jdbc的连接字符串中没有给当前的数据源用户指定默认的schema,而当前的数据源用户下可能有多个schema,则会使用数据源用户默认的schema.

例如:admin用户的默认shema是admin,但是我们需要连接的schema是db2inst1,这时候,使用sql操作数据库的时候,会报42704的错.

解决方案如下:为当前的连接执行默认的schema是db2inst1:

<Resource auth="Container" driverClassName="com.ibm.db2.jcc.DB2Driver"
        factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
        maxActive="20" maxIdel="10" maxWait="1000" name="jdbc/ZYBIDB" password="db2admin"
        type="javax.sql.DataSource" url="jdbc:db2://10.27.70.33:60000/dbtest:currentSchema=db2inst1;"
        username="db2admin" />

特别注意:见上面的红字,currentSchema是区分大小写的,后面的分号也是必须的!

 

当然,若果你只有查询操作,没有其他的增加\删除\修改之类的操作,那么,也不需要上面的指定默认的currentSchema,可以麻烦一点的,直接在自己的sql语句中增加自己的currentSchema指定,

就可以解决不能找不到对应的schema的问题了,具体的见下:

select count(1) as count from db2inst1.table_name 

 

转载于:https://www.cnblogs.com/lilin0719/p/5176771.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值