derby - JAVA DB:Shutdown Derby不起作用

标签 derby javadb

我正在使用以下方法关闭与Java DB的连接:

public void shutdownDisconnect() {

    if(connectionExists) {
        String databaseURL = getDBurl();
        dbProperties.put("shutdown", "true");
        try {
            DriverManager.getConnection(databaseURL, dbProperties);
            System.out.println("success"); 
        } catch (SQLException ex) {
           //shutdown always results in an SQLException
            System.out.println(ex); 
           //This exeption is:java.sql.SQLNonTransientConnectionException: DERBY SQL error: SQLCODE: -1, SQLSTATE: 08006, SQLERRMC: Database 'databasename' shutdown.
        }
        connectionExists = false;
    }
}

我的第一个System.out.println没有打印任何内容,这意味着未执行try,并且出现上述异常。

据我了解,“成功关闭总是会导致SQLException”,但这是否意味着未执行try语句?谢谢你的帮助。

最佳答案

您的try已执行,否则将不会引发异常。

不幸的是,这就是使用Derby进行关机的方式。

关于derby - JAVA DB:Shutdown Derby不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9883934/

相关文章:

java - 将嵌入式 Derby 数据库整个表放入字符串数组中

java - JDBC Apache derby SYSCOLUMNS 表不显示信息

java - Apache Derby 了解引用和外键之间的差异

java - 应用程序架构 - 如何将 Swing 应用程序连接到后端?

java - 通过外键获取JavaDB中的列数据

java - 使用 Java DB 和 Derby 之间有什么区别吗?

java - Spring @Transactional 提交失败; Deby + Eclipse链接

jdbc - 如何移动 java DB Apache Derby 中的列?

mysql - 将数据从 MySql 迁移到 Derby (JAVADB) 的简便方法?

java - 无法从代码插入中间表,但是当从 MySQL 中的 phpmyadmin 执行时,它会正确插入它