powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Чем подружить dBase и Postgres?
15 сообщений из 15, страница 1 из 1
Чем подружить dBase и Postgres?
    #33336040
Maxim Yemelyanov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надо переливать данные из одного в другой и обратно
Кто-нибудь подобное делал?
Чем и как.
Примеры покажите плиз
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33336596
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, например, perl DBI - очень хорошо работает
DBI есть как к DBF так и к Postgres
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33336944
фффф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
+ dbi-link - это если надо выполнять запросы к файлам dBase непосредственно (например, если они часто изменяются и слишком большие, чтобы полный экспорт делать каждый раз). Если работали с MS SQL - аналог linked server. Нужен perl и модули DBI, DBD::XBase.
Правда с начала года в проекте никаких изменений, а некоторые глюки есть.
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33339955
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я так понимаю это надо pgPerl юзать?
Или можно акк-то из pg\plSQL сделать?
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33343929
фффф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mwolfЯ так понимаю это надо pgPerl юзать?
Или можно акк-то из pg\plSQL сделать?
Про dbi-link вопрос? Он написан на pl/perl, так что перл необходим. Потом можно работать двумя способами, из функции на любом языке:
1) выполнять произвольный SQL-запрос через функцию dbi_link.remote_select, передавая каждый раз имя_сервера/логин/пароль. Возращается setof RECORD, поэтому надо описывать получаемый разультат явно.
2) создать псевдо-таблицы с помощью dbi_link.make_accessor_functions. Для каждой таблицы удаленного сервера, в отдельной схеме создается таблица с rule на SELECT/INSERT/UPDATE/DELETE . Обращение к таблице вызывает запрос через DBI. Нормально впрочем работает пока только SELECT, при изменении данных есть глюки. С конвертацией типов данных тоже не всё ладно.
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33344974
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
фффф
Про dbi-link вопрос? Он написан на pl/perl, так что перл необходим. Потом можно работать двумя способами, из функции на любом языке:
1) выполнять произвольный SQL-запрос через функцию dbi_link.remote_select, передавая каждый раз имя_сервера/логин/пароль. Возращается setof RECORD, поэтому надо описывать получаемый разультат явно.
2) создать псевдо-таблицы с помощью dbi_link.make_accessor_functions. Для каждой таблицы удаленного сервера, в отдельной схеме создается таблица с rule на SELECT/INSERT/UPDATE/DELETE . Обращение к таблице вызывает запрос через DBI. Нормально впрочем работает пока только SELECT, при изменении данных есть глюки. С конвертацией типов данных тоже не всё ладно.

Эээ.
То есть я подключаю pl/perl в качестве языка. Выполняю dbi_link.sql тот что в этом типа контрибе идёт и юзаю ф-ции оттуда. Токо не факт, что инчёрты апдейты нормально работать будут.
Прально понимаю процесс?

Ок тогда такие вопросы:
Кто-нить пробовал с dBase-ом так общаться?
dbf2pg кто-нить пробовал?
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33353929
Opilki_Inside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim YemelyanovНадо переливать данные из одного в другой и обратно
Кто-нибудь подобное делал?
Чем и как.
Примеры покажите плиз


Я в Делфи подобное делал неоднакратно... А в чем собственно проблема?
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33354964
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Opilki_Inside Maxim YemelyanovНадо переливать данные из одного в другой и обратно
Кто-нибудь подобное делал?
Чем и как.
Примеры покажите плиз


Я в Делфи подобное делал неоднакратно... А в чем собственно проблема?

Проблема как раз в том, чтоб не писать в Делфи клиента. Во-первых я не знаю где будет выполняться код (хотя скорее всего это будет Линух), во-вторых как его изменять в случае необходимости. Поэтому меня бы вполне удовлетворили заложенные в базу возможности
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33355208
Opilki_Inside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется что прям так уж очень просто не получится...

Можно сделать так:
1. сделать dump базы и в виде скрипта с insert'ами и create table'ами
2. с помощью какой-нибудь программы которая работала бы с ODBC выгрузить его в DBF...в виндах можно использовать MS Access или SQL-Explorer

ед. при выгрузке данных через pg_dump наверняка будут специфичные для postgres'а всякие команды...
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33355456
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Opilki_InsideМне кажется что прям так уж очень просто не получится...

Можно сделать так:
1. сделать dump базы и в виде скрипта с insert'ами и create table'ами
2. с помощью какой-нибудь программы которая работала бы с ODBC выгрузить его в DBF...в виндах можно использовать MS Access или SQL-Explorer

ед. при выгрузке данных через pg_dump наверняка будут специфичные для postgres'а всякие команды...

См. предыдущий ответ
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33355483
Opilki_Inside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть структуру DBF файлов заранее создать раз и навсегда... а потом выгружать просто инсерты?
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33360609
strizh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подружить можно с помощью MS Access 97 + ODBC-драйвер postgres (внимание - XP, 2000, 2003 - так не работают, либо не будет записи в dbf, либо чтения с postgres ..., короче - на эти грабли не наступай). Просто и наглядно, включая копирование структур таблиц dbf <-> Postgres.
Тормозить будет при переливке больших данных в postgres, так как для каждой записи будет выполняться своя транзакция insert.
Но если это не каждый час нужно, то хоть сотни тысяч записей гоняй.
А если не просто присоединенные таблицы и сохраненные запросы использовать, а и чуть программирования на VB - так и очень просто сложные обработки делать с преобразованием форматов, структур таблиц и пр.
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33363836
фффф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возвращаясь к импорту/экспорту через dbi-link.

Я делал импорт в PostgreSQL из Sybase и MS SQL, для чего пришлось dbi-link дорабатывать (попутно увеличивая функциональность).

С XBase ситуация оказалась чуть хуже - не знал что драйвер не поддерживает перекодировку и определение метаданных, поэтому я решил поработать ещё немного напильником и выложить полученный продукт - dbi-link-mod - на благо сообщества.

Внутри также есть инструкция по установке специально для работающих на Windows, и пример (правда для MSSQL).

Буду рад, если кто-нибудь проверит работу под Линуксом и на бете 8.1 (уже RC вышел).
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33393121
Opilki_Inside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, как-то покапался я тут в bin-директории и наткнулся на интеренсную стандартную утилку dbf2pg.exe (постгрес версии 8.0.2)... сам не разбирался, но может тебе это еще актуально...
...
Рейтинг: 0 / 0
Чем подружить dBase и Postgres?
    #33393447
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Opilki_InsideКстати, как-то покапался я тут в bin-директории и наткнулся на интеренсную стандартную утилку dbf2pg.exe (постгрес версии 8.0.2)... сам не разбирался, но может тебе это еще актуально...

Спасибо. Но уже видел ;-)

Надобность в импорт-экспорте, к счастью, отпала
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Чем подружить dBase и Postgres?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]