Подключение к серверу HSQLDB с использованием имени пользователя и пароля в команде запуска сервера в cmd не работает

Я запускаю сервер hsqldb с db_name как MDB и учетными данными как user=test и password=test, используя командную строку как:

    java -cp hsqldb.jar org.hsqldb.server.Server --database.0 file:/E:/DB/mdb --dbname.0 mdb user=test 
    password=test

он запускает сервер без ошибок, но когда я использую те же учетные данные в своем Java-коде, что и

    con = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/mware;file:E:/DB/mdb", "test", 
    "test");

он выдает исключение как:

 {java.sql.SQLInvalidAuthorizationSpecException: invalid authorization specification - not found: test
    at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
    at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
    at org.hsqldb.jdbc.JDBCConnection.<init>(Unknown Source)
    at org.hsqldb.jdbc.JDBCDriver.getConnection(Unknown Source)
    at org.hsqldb.jdbc.JDBCDriver.connect(Unknown Source)}

пожалуйста помоги

1 ответ

Правильный способ запуска сервера:

java -cp hsqldb.jar org.hsqldb.server.Server --database.0 file:/E:/DB/mdb;user=test;password=test --dbname.0 mware 

И связь должна быть такой:

con = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/mware, "test", 
"test");

Любые начальные настройки базы данных в дополнение к user и passwordопределяется так же. Например --database.0 file:/E:/DB/mdb;user=test;password=test;hsqldb.tx=mvcc. Свойства применяются к новой базе данных и могут быть изменены позже с помощью операторов SQL. См. http://hsqldb.org/doc/2.0/guide/dbproperties-chapt.html#dpc_db_operations

Другие вопросы по тегам