【问题标题】:java.sql.SQLException: Bad connection URL while accessing the databasejava.sql.SQLException:访问数据库时连接 URL 错误
【发布时间】:2023-04-07 07:55:01
【问题描述】:

我正在我的一个 spring 配置文件中配置数据库详细信息,如下所示:

<bean id="awd" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.ibm.as400.access.AS400JDBCDriver"/>
        <property name="url" value="jdbc:db2://123.43.133.257/XYZ" />
        <property name="username" value="xyz" />
        <property name="password" value="xyz" />
    </bean>

当我尝试从 Java 端连接上述数据库时,出现以下异常:

Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: Bad connection URL
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
    at org.springframework.jdbc.support.JdbcUtils.extractDatabaseMetaData(JdbcUtils.java:280)
    ... 139 more
Caused by: java.sql.SQLException: Bad connection URL
    at com.ibm.u2.jdbc.UniJDBCMsgFactory.createException(UniJDBCMsgFactory.java:109)
    at com.ibm.u2.jdbc.UniJDBCDriver.connect(UniJDBCDriver.java:116)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:154)
    at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:173)
    at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:164)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:153)
    at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
    at org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource.getConnection(AbstractRoutingDataSource.java:162)
    at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
    at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
    ... 140 more

谁能告诉我这里出了什么问题?

【问题讨论】:

  • @almasshaikh 如何链接到与 DB2 相关的 derby 文档?
  • 尝试从 SQuirreL 之类的 SQL 客户端连接到该 URL(我不记得 IBM 工具了)。此错误表示 URL 不正确。找到一个有效的 URL/DB 名称/用户名/密码组合,然后将其插入您的 XML。
  • 啊不是那个意思!它的格式应该是 jdbc:as400://HOST/DATABASE;根据 OP 指定的驱动程序,但标签显示 db2,OP 应使用“com.ibm.db2.jdbc.app.DB2Driver”作为驱动程序

标签: java jdbc ibm-midrange db2-400


【解决方案1】:

你使用的是 AS400JDBCDriver,所以你的 jdbc url 应该是这样的:

jdbc:as400://123.43.133.257/XYZ

而不是

jdbc:db2://123.43.133.257/XYZ

【讨论】:

    猜你喜欢
    • 2014-05-30
    • 1970-01-01
    • 1970-01-01
    • 2017-07-18
    • 2021-03-11
    • 2012-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多