【问题标题】:connection error with db2 jdbc与 db2 jdbc 的连接错误
【发布时间】:2016-06-23 20:49:16
【问题描述】:

谁能提供有关如何诊断下面列出的错误的线索?注意,我可以通过 DB2 connect 连接到这个 DB2 实例,但不能通过 jdbc。

   org.apache.openjpa.persistence.PersistenceException: Unable to open a test 

connection to the given database. JDBC url = jdbc:db2://dxxx_xxx.xxx.com:5000/XXXXX:deferPrepares=false, username = NNNNN. Terminating connection pool. Original Exception: ------
    com.ibm.db2.jcc.am.SqlSyntaxErrorException: [jcc][10165][10051][3.63.75] Invalid database URL syntax: jdbc:db2:/dxxx_xxx.xxx.com:5000/XXXXX:deferPrepares=false. ERRORCODE=-4461, SQLSTATE=42815
        at com.ibm.db2.jcc.am.fd.a(fd.java:679)
        at com.ibm.db2.jcc.am.fd.a(fd.java:60)
        at com.ibm.db2.jcc.am.fd.a(fd.java:85)
        at com.ibm.db2.jcc.DB2Driver.tokenizeURLProperties(DB2Driver.java:911)
        at com.ibm.db2.jcc.DB2Driver.connect(DB2Driver.java:408)
        at java.sql.DriverManager.getConnection(DriverManager.java:571)
        at java.sql.DriverManager.getConnection(DriverManager.java:215)
        at com.jolbox.bonecp.BoneCP.obtainRawInternalConnection(BoneCP.java:256)
        at com.jolbox.bonecp.BoneCP.<init>(BoneCP.java:305)
        at com.jolbox.bonecp.BoneCPDataSource.maybeInit(BoneCPDataSource.java:150)

【问题讨论】:

  • 我错过了一个 ;在连接字符串的末尾。

标签: java jdbc db2


【解决方案1】:

错误信息是不言自明的:

无效的数据库 URL 语法

URL 中不能有任何空格,键值对用分号而不是逗号分隔。请注意,您也必须在最后一个值后面加上分号。

jdbc:db2://dxxx_xxx.xxx.com:5000/XXXXX:deferPrepares=false;username=NNNNN;

详情可见in the manual

【讨论】:

    【解决方案2】:

    查看从 DB2 文档中获取的信息(添加了下面的参考链接)。

    消息文本: text-from-getMessage

    说明:指定的值无效或超出范围。

    用户响应:调用 SQLException.getMessage 以检索有关问题的具体信息。

    SQLSTATE: 42815

    参考:https://www.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.apdv.java.doc/src/tpc/imjcc_rjvjcsqc.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-24
      • 1970-01-01
      • 1970-01-01
      • 2020-03-31
      • 2015-06-12
      • 1970-01-01
      • 2013-09-17
      相关资源
      最近更新 更多