Вопрос

Я действительно не понимаю SQLTOOL ... Я просто хочу импортировать файл SQL в базу данных и выбрал эту команду, чтобы сделать это:

java -jar ~/bin/sqltool.jar --autoCommit --inlineRc URL=jdbc:hsqldb:file:/path/to/my/database.hsqldb,USER=SA,PASSWORD='' database.sql

В базе данных. SQL - это все, например:

create table foo(id identity, name varchar(256));

Затем у меня есть второй сценарий, называемый data.sql, который должен быть записан в базу данных одинаково, в этом все мои вещи Testdata:

insert into foo(name) values('bla');

Когда я теперь выполняю свой скрипт Bash, SQLTOOL создает свежую базу данных (прежде чем я удалил файл), но ничего не делает с файлом SQL! Первый скрипт работает без ошибок, но второй говорит:

SEVERE  SQL Fehler an 'data.sql' Zeile 1:
"insert into foo (name) values('bla')"
user lacks privilege or object not found: FOO
org.hsqldb.cmdline.SqlTool$SqlToolException

Когда я сейчас подключаюсь к базе данных и говорю \dt Там нет стола!

Я также положил commit; до конца каждого файла и открыть SQLTOOL с --autoCommit Но это тоже не работает ... что там происходит?

Это было полезно?

Решение

HSQLDB требует команды Shutdown до последнего подключения к закрытию или свойство соединения JDBC, Shutdown = true. Видеть док.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top