![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
yuliada |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 16.2.2009 Где: Иркутск - San Die go Репутация: нет Всего: нет |
Нужно из java программы запускать скрипт из файла с дампом базы для PostgreSQL, который очень большой. Парсить его наверно нежелательно. Как это лучше сделать? Из коммандной строки нужно коннектиться к psql терминалу и потом в нем запускать этот скрипт. Можно ли как-то программно это все сделать?
|
|||
|
||||
Platon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1801 Регистрация: 25.4.2006 Репутация: 16 Всего: 40 |
yuliada, консольного ввода/вывода, думаю, хватит.
Через программу запускаете консольного клиента PostgreSQL и в нем работаете так же, как если бы вы работали с консолью с клавиатуры. Добавлено @ 11:54 более того, возможно, PostgreSQL может принимать в качестве аргументов определенные команды с параметрами. Это сообщение отредактировал(а) Platon - 5.4.2009, 11:54 |
|||
|
||||
tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 31 Всего: 132 |
Вот эта софтина вроде бы умеет выполнять sql-скрипты прямо из Java-кода - http://scriptella.javaforge.com/.
|
|||
|
||||
tux |
|
|||
![]() Летатель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1853 Регистрация: 10.2.2005 Где: msk.ru Репутация: 31 Всего: 132 |
Еще в IBatis есть возможность выполнять скрипты - http://ibatis.apache.org/docs/java/user/co...riptRunner.html.
|
|||
|
||||
yuliada |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 16.2.2009 Где: Иркутск - San Die go Репутация: нет Всего: нет |
А как можно запустить консольного клиента PostgreSQL через программу. Что-то типа вот этого?
Как с ним общаться в этом случае? Через p.getInputStream(), p.getOutputStream()? Когда я пытаюсь что-то туда писать/читать он ни на что не реагирует. Или надо как-то по другому вообще? |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 8 Всего: 56 |
Для таких целей есть скриптовые языки аля Shell ( bat ). Пишешь батничек для винды который вызывает постгре с нужными параметрами, запускает какие то команды в нём и т.д. , а дальше вызываешь этот батничек в своей программе. Это альтернативное - более простое решение, нежели взаимодействовать через ява программу. |
|||
|
||||
yuliada |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 82 Регистрация: 16.2.2009 Где: Иркутск - San Die go Репутация: нет Всего: нет |
Оказалось что можно сделать проще, передать имя файла параметром:
Sql команды можно выполнять так же, только с префиксом -c Это сообщение отредактировал(а) yuliada - 6.4.2009, 05:26 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |