但是这样仍然存在Timestamp从数据库之中不能用,ResultSet.getTimestamp()读出来的问题?如何解决?
耗了我将近一天的时间的采用"com.ibm.db2.jcc.DB2Driver"连接DB2数据库的时候,读取Timestamp类型的数据的时候老是出现异常的情况,报告出现ArrayOutofIndex什么的错误。今天,终于把它给解决了,原来,使用的DB2 V8.1之中带的db2jcc.jar包是不正确的,改成了DB2 V8.2之中的带的db2jcc.jar包程序就运行正确了。
经验,JDBC连接DB2数据库的时候出现的很多的奇怪的问题是由包不对所导致的,遇到这种问题一定要检查所使用的驱动的包是否正确。
3、SQL30081N 检测到通信错误。正在使用的通信协议:"TCP/IP"。正在使用的通信API:"SOCKETS"。检测到错误的位置:"192.168.1.12"。检测到错误的通信函数:"connect"。协议特定的错误代码:"10061"、"*"、"*"。 SQLSTATE=08001
遇到该问题,有以下几种方法去查找原因:
一、看看端口号有没有配置正确,看一下配置参数svcename跟services文件中配置的db2端口号是否一致,windows一般用50000,unix/linux一般用60000
二、连接出错首先看看服务器ip 和端口写对没有
ip如果没错就要看看服务器的db2服务端口对不对。另外对于服务器下面这些也要注意
检查服务器的配置情况如下:
验证存在的DB2数据库
db2 list db directory
db2 list db directory show detail
验证实例使用的通讯协议,查看DB2COMM变量
db2set -all
查看数据库管理器的配置,查看SVCENAME(特指tcpip协议)
db2 get dbm cfg
查看/etc/services中,有无与上面对应SVCENAME的端口,例如:
db2cDB2 50000/tcp
要确认服务器是否在监听,可以用netstat -an 来查看端口是否处于LISTEN状态
【责任编辑:段燃 TEL:(010)68476606】
内容导航