Как работать с mdb из-под Лазаруса?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Как работать с mdb из-под Лазаруса?

Сообщение AlexCriv » 07.07.2011 14:51:06

есть проблемка: нужно в лазарусе из мдб в оракл данные перебросить
с ораклом вроде разобрались - и вручную и программно можно менять настройки и доступы, сиквел запускать и т.д.,
а вот с аксесом проблема - понимает его только одибиси элемент и настройке он поддаётся только вручную,
а фишка программы как раз в том, что каталог и имя файла mdb передаётся параметром и нужно из него в общую базу оракловую сливать...
подскажите плиз, как всё-таки с mdb данные получать? кто-то пытался?
AlexCriv
незнакомец
 
Сообщения: 6
Зарегистрирован: 07.07.2011 14:46:03

Re: Как работать с mdb из-под Лазаруса?

Сообщение WAYFARER » 07.07.2011 15:06:40

AlexCriv писал(а):из мдб в оракл данные перебросить

Oracle dblink
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 537
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: Как работать с mdb из-под Лазаруса?

Сообщение v-t-l » 07.07.2011 18:04:53

v-t-l
энтузиаст
 
Сообщения: 735
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Как работать с mdb из-под Лазаруса?

Сообщение AlexCriv » 08.07.2011 06:40:20

Oracle dblink


Извините, а нельзя ли поподробнее?
Oracle dblink с mdb тоже работать может?
AlexCriv
незнакомец
 
Сообщения: 6
Зарегистрирован: 07.07.2011 14:46:03

Re: Как работать с mdb из-под Лазаруса?

Сообщение WAYFARER » 08.07.2011 07:16:15

AlexCriv писал(а):Извините, а нельзя ли поподробнее?Oracle dblink с mdb тоже работать может?

Может.
http://www.sql.ru/faq/faq_topic.aspx?fid=163
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 537
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: Как работать с mdb из-под Лазаруса?

Сообщение AlexCriv » 08.07.2011 08:04:38

WAYFARER писал(а):Может.
http://www.sql.ru/faq/faq_topic.aspx?fid=163

это пример работы через odbc с excel, а у меня mdb
хотя проблема не в этом - вы предлагаете сделать аналогично, но есть ньюанс:
(о котором, кстати я упоминал выше) настроенный в системе odbc источник указывает на конкретный mdb файл, а мне нужно менять источники программно
AlexCriv
незнакомец
 
Сообщения: 6
Зарегистрирован: 07.07.2011 14:46:03

Re: Как работать с mdb из-под Лазаруса?

Сообщение WAYFARER » 08.07.2011 08:49:48

AlexCriv писал(а):это пример работы через odbc с excel, а у меня mdb

По аналогии. Таким образом можно работать со всем, для чего существует ODBC драйвер
AlexCriv писал(а):настроенный в системе odbc источник указывает на конкретный mdb файл, а мне нужно менять источники программно

А что мешает? SQLConfigDataSource вам в руки.
http://msdn.microsoft.com/en-us/library/ms716476.aspx
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 537
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: Как работать с mdb из-под Лазаруса?

Сообщение AlexCriv » 08.07.2011 09:29:59

WAYFARER писал(а):А что мешает? SQLConfigDataSource вам в руки.
http://msdn.microsoft.com/en-us/library/ms716476.aspx

мешает мультиплатформенность, мы для того на лазарус и перелезли, чтобы на всяких линях наши проги шли, а SQLConfigDataSource - это же апи считай оно тока под виндой покатит
AlexCriv
незнакомец
 
Сообщения: 6
Зарегистрирован: 07.07.2011 14:46:03

Re: Как работать с mdb из-под Лазаруса?

Сообщение v-t-l » 08.07.2011 11:17:14

AlexCriv писал(а):мешает мультиплатформенность

mdb и мультиплатформенность - вещи слабо совместимые. Единственный кроссплатформенный код для чтения mdb, насколько мне известно, это mdbtools (см. выше).
С mdbx (MSOffice 2007+) - может быть слегка получше, если mdbx - такой же зипованый XML, как и docx, xlsx и т.п. (не помню наверняка). Тогда процесс чтения данных сводится к распаковке mdbx-файла как zip-архива и разбору извлеченных xml-файлов.
v-t-l
энтузиаст
 
Сообщения: 735
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: Как работать с mdb из-под Лазаруса?

Сообщение Ism » 08.07.2011 20:38:28

Может UniDAC ? У них есть версия для Lazarus под Linux. Если она такая же как и под Win, то должна поддерживать и mdb.

http://www.devart.com/unidac/download.html

Добавлено спустя 4 часа 39 минут 19 секунд:
Только что посмотрел, под линукс UniDAC нет провайдера работающего с Access.
Так, что конвертируйте MDB во чтото нормальное и работающее на всех платформах и выкиньте Access.

Добавлено спустя 16 минут 12 секунд:
А конвертировать могут помочь вот эти утилиты

http://www.devart.com/ru/dbforge/oracle/studio/ (по идее должен мастер импорта)

http://www.sqlmanager.net/en/products/oracle/dataimport (ну а эта для импорта создана)
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08

Re: Как работать с mdb из-под Лазаруса?

Сообщение WAYFARER » 09.07.2011 11:49:24

А может есть возможность просто отказаться от использования mdb?
Аватара пользователя
WAYFARER
энтузиаст
 
Сообщения: 537
Зарегистрирован: 09.10.2009 00:00:04
Откуда: г. Курган

Re: Как работать с mdb из-под Лазаруса?

Сообщение Ism » 09.07.2011 13:15:27

Как вариант перенести все таблицы из mdb скажем в firebird и связать с ним mdb через odbc заменив таблицы в mdb связанными таблицами с теми же названиями. Это позволит продолжать работать в access и одновременно писать интерфейс к тем же данным на Lazarus
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13

Рейтинг@Mail.ru