Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Запуск sql скрипта из файла |
Автор: yuliada 5.4.2009, 11:07 |
Нужно из java программы запускать скрипт из файла с дампом базы для PostgreSQL, который очень большой. Парсить его наверно нежелательно. Как это лучше сделать? Из коммандной строки нужно коннектиться к psql терминалу и потом в нем запускать этот скрипт. Можно ли как-то программно это все сделать? |
Автор: Platon 5.4.2009, 11:50 |
yuliada, консольного ввода/вывода, думаю, хватит. Через программу запускаете консольного клиента PostgreSQL и в нем работаете так же, как если бы вы работали с консолью с клавиатуры. Добавлено @ 11:54 более того, возможно, PostgreSQL может принимать в качестве аргументов определенные команды с параметрами. |
Автор: tux 5.4.2009, 13:39 |
Вот эта софтина вроде бы умеет выполнять sql-скрипты прямо из Java-кода - http://scriptella.javaforge.com/. |
Автор: tux 5.4.2009, 14:28 |
Еще в IBatis есть возможность выполнять скрипты - http://ibatis.apache.org/docs/java/user/com/ibatis/common/jdbc/ScriptRunner.html. |
Автор: yuliada 5.4.2009, 23:50 | ||
А как можно запустить консольного клиента PostgreSQL через программу. Что-то типа вот этого?
Как с ним общаться в этом случае? Через p.getInputStream(), p.getOutputStream()? Когда я пытаюсь что-то туда писать/читать он ни на что не реагирует. Или надо как-то по другому вообще? |
Автор: yuliada 6.4.2009, 05:23 | ||
Оказалось что можно сделать проще, передать имя файла параметром:
Sql команды можно выполнять так же, только с префиксом -c |