Прежде всего, я хотел бы сказать, что я новичок в базе данных h2. Мне нужно выполнить sql script файл в базе данных h2. У меня есть файл script test.sql, и я хочу выполнить его в базе данных h2. Возможно ли это?
Выполнение файла script в базе данных h2
Ответ 1
Вы можете использовать инструкцию RUNSCRIPT SQL:
RUNSCRIPT FROM 'test.sql'
или вы можете использовать Средство командной строки RunScript:
java -cp h2*.jar org.h2.tools.RunScript -url jdbc:h2:~/test -script test.sql
Вы также можете использовать инструмент RunScript в приложении:
RunScript.execute(conn, new FileReader("test.sql"));
Ответ 2
В OSX (это не имеет значения) с v. 1.4.192 со следующими командами, независимо от того, что я сделал, я не мог видеть никаких результатов:
java -cp h2*.jar org.h2.tools.RunScript -url "jdbc:h2:file:~/testdb" -user someusername -password somepass -script select.sql
где select.sql просто:
select * from PUBLIC.MYTABLE;
Мне пришлось добавить -showResults
, прежде чем начнется вывод. Вот полная команда:
java -cp /Users/az/.m2/repository/com/h2database/h2/1.4.192/h2-1.4.192.jar org.h2.tools.RunScript -url "jdbc:h2:file:~/testdb" -user someusername -password somepass -script select.sql -showResults
Если у вас нет необходимой банки, скачайте с здесь (нажмите ссылку jar
рядом с каждой версией). Некоторые прямые ссылки на банки следующие:
1.4.193 (Обновлено 31-Oct-2016)
1.4.192 (Обновлено 26 мая-2016)
1.4.191 (обновлено 21-янв-2016)
1.4.190 (Обновлено 11-Oct-2016)
Ответ 3
Для меня система ответила:
не нашел драйвер org.h2.tools.RunScript
Решение:
java -classpath <path_to_your_h2-*.jar> org.h2.tools.RunScript \
-url jdbc:h2:tcp://localhost/~/test -script test.sql
Смотрите: http://www.h2database.com/html/tutorial.html#using_server