无法以新用户身份连接到 HyperSQL / HSQLDB 数据库
Can't connect to HyperSQL / HSQLDB database as new user
我是这样启动 HyperSQL 的:
java -cp hsqldb.jar org.hsqldb.server.Server --database.0 file:/data/db --dbname.0 some_db
然后如果我尝试像这样连接它:
DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/some_db", "SA", "");
一切正常。现在当我添加新用户时:
CREATE USER new_user PASSWORD "some_password" ADMIN;
我无法使用新用户数据连接到 HyperSQL 服务器(重启后也是如此):
DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/some_db", "new_user", "some_password");
有什么建议吗?
用户名只有在创建时被双引号才区分大小写
CREATE USER "new_user" PASSWORD "some_password" ADMIN;
DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/some_db", "new_user", "some_password");
在您的示例中,实际用户名是 NEW_USER,如果您在连接字符串中使用大写字母,则可以作为该用户进行连接。
我是这样启动 HyperSQL 的:
java -cp hsqldb.jar org.hsqldb.server.Server --database.0 file:/data/db --dbname.0 some_db
然后如果我尝试像这样连接它:
DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/some_db", "SA", "");
一切正常。现在当我添加新用户时:
CREATE USER new_user PASSWORD "some_password" ADMIN;
我无法使用新用户数据连接到 HyperSQL 服务器(重启后也是如此):
DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/some_db", "new_user", "some_password");
有什么建议吗?
用户名只有在创建时被双引号才区分大小写
CREATE USER "new_user" PASSWORD "some_password" ADMIN;
DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/some_db", "new_user", "some_password");
在您的示例中,实际用户名是 NEW_USER,如果您在连接字符串中使用大写字母,则可以作为该用户进行连接。