【发布时间】:2013-02-04 10:59:29
【问题描述】:
我正在编写一些使用 Java DB(即 Apache Derby)作为数据库的 Java 应用程序。我使用以下方法连接数据库:
Connection getConnection() throws SQLException {
EmbeddedDataSource ds = new EmbeddedDataSource();
ds.setDatabaseName(dbUri);
ds.setPassword(password);
ds.setUser(username);
Connection conn = ds.getConnection();
conn.setSchema(schema);
return conn;
}
这工作正常,但有时我得到以下异常:
java.sql.SQLException: Another instance of Derby may have already booted the database
当我运行我的应用程序并且同时 SQuirreL SQL 客户端 连接到我的数据库时会发生这种情况。所以一切都按预期工作,但我希望能够在我的 getConnection() 方法中检查这一点。换句话说,我想检查是否有任何会话打开到我的数据库,例如,关闭它们、抛出我自己的异常或显示错误对话框。我不知道该怎么做。
谢谢
【问题讨论】:
标签: java database-connection derby javadb