【发布时间】:2017-03-01 22:28:38
【问题描述】:
我创建任意数量的目录(比如 50 个),如下所示:
...
properties = new HsqlProperties();
properties.setProperty("server.remote_open", false);
properties.setProperty("server.shutdown", false);
for(int i=0;i<50; i++){
properties.setProperty("server.database." + i, "file:db/production/pr" + i + "/pr");
properties.setProperty("server.dbname." + i, "alias" + i);
}
Server server = new Server();
server.setProperties(p);
server.setLogWriter(null);
server.setErrWriter(null);
server.start();
...
我可以使用用户名“SA”、空密码和生成的别名成功连接到每个创建的目录。 如果我在其中一个打开的目录上发出“SHUTDOWN”,它会正确关闭,但是当我尝试重新打开它时,我会收到“一般错误:数据库别名不存在”,所以我需要关闭整个服务器并重新启动。 如何在“关闭”后重新打开单个数据库而不重新启动服务器?
【问题讨论】:
-
用什么代码重新打开数据库?
-
@fredt 没有代码,我希望可以从第三方应用程序访问数据库。基本上我在 Intellij Idea 中启动我的服务器代码,然后使用 Libreoffice Base 或 Netbeans 数据库浏览器来处理数据库。我可以使用这两个程序成功打开数据库,但是在发出“SHUTDOWN”之后,如果我重试打开数据库,我会得到“一般错误:数据库别名不存在”。
标签: hsqldb