Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.03.2012, 18:16   #1
d_adilet
Пользователь
 
Регистрация: 13.01.2010
Сообщений: 49
Стрелка Из серверной таблицы Оракл скопировать в локальную *.db

Добрый день уважаемые гуру!
Не могли бы Вы подсказать как можно скопировать данные полученные запросом из Оракла (на сервере) в локальную таблицу в формате .db.
Буду очень признателен за пример.
Заранее спасибо.
d_adilet вне форума Ответить с цитированием
Старый 08.03.2012, 19:29   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Из Оракла в Paradox?
Ты набор получил? В цикле по нему проходись и перечитывай в другую таблицу данные:
Код:
while not q.eof do begin
 t.append;
  for i:=0 to q.FieldsCount-1 do t.fields[i].Value=q.fields[i].Value;
 q.next;
end;
Где q - Query подключенный к Ораклу, а t - Table подключенный к Парадоксу.
Ясен пень?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.03.2012, 08:44   #3
d_adilet
Пользователь
 
Регистрация: 13.01.2010
Сообщений: 49
По умолчанию

Спасибо большое,
сейчас попробую...
d_adilet вне форума Ответить с цитированием
Старый 10.03.2012, 18:02   #4
d_adilet
Пользователь
 
Регистрация: 13.01.2010
Сообщений: 49
По умолчанию

Работает! спасибо.
Еще вопрос... как сделать чтобы пакетами скидывать?
Так как там много строк 300-500 тыс.
d_adilet вне форума Ответить с цитированием
Старый 10.03.2012, 19:09   #5
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

Если это нужно сделать только один раз - можно запустить программу типа ESF Database Convert . Не придется самому создавать таблицы со структурой, аналогичной копируемым и т.п. Программа создаст таблицы сама вместе с индексами. Причем при необходимости при отсутствии булевых полей заменит false/true на 0/1, дату и время преобразует в нужный формат для этой бд и т.д.

ESF Database Convert конвертит следующие форматы:
- From/ to Oracle Conversion
- From/ to SQL Server Conversion
- From/ to MySQL Conversion
- From/ to PostgreSQL Conversion
- From/ to Access 2000/2007 Conversion
- From/ to Excel 2000/2007 Conversion
- From/to Visual Foxpro Conversion
- From/to SQLite Conversion
- From/ to FireBird Conversion
- From/ to InterBase Conversion
- From/ to Paradox 3.x/4.x/5.x Conversion
- From/ to Lotus WK1/WK3/WK4 Conversion
- From/ to CSV/Text File/MailBox/Html Conversion
и др.
И таких программ много. Гугл в помощь.
_SERGEYX_ вне форума Ответить с цитированием
Старый 10.03.2012, 19:40   #6
d_adilet
Пользователь
 
Регистрация: 13.01.2010
Сообщений: 49
По умолчанию

нет не один раз...
Есть база сетевая...также есть и локальная...(чтоб в командировках работать или оффлайн)...и мне периодически его надо обновлять...
d_adilet вне форума Ответить с цитированием
Старый 10.03.2012, 20:02   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А Oracle разве не имеет средств непосредственного взаимодействия из своей среды с данными из других СУБД? Через ADO, ODBC или другое. Что-то слышал об таких возможностях. Может в эту сторону копнуть?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 10.03.2012, 20:59   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А Oracle разве не имеет средств непосредственного взаимодействия из своей среды с данными из других СУБД?
Имеет конечно. Только автор топика тему то не раскрыл. Кто знает может он делает приблудину для клиента, и запускать это все будет у клиента.
Короче автор ИМХО берегом в лес попер, явно не попытавшись разобраться в задании...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.03.2012, 22:10   #9
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Я и имел ввиду из клиента, обращаясь к хранимой процедуре, в которой реализована выгрузка в таблицу другой СУБД. В MSSQL куча таких возможностей, там где допустимо, даже в рамках распределенной транзакции можно обновлять данные таблиц MSSQL и другой СУБД. Кстати и в гугле где-то видел импорт из оракла в MSSQL с использованием INSERT-ов, хотя может и ошибаюсь. Для .db не скажу

ADD

Примочины, что _SERGEYX_ упоминал, что мешает из дельфей вызвать?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 10.03.2012 в 22:17.
Аватар вне форума Ответить с цитированием
Старый 10.03.2012, 23:40   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Кстати и в гугле где-то видел импорт из оракла в MSSQL с использованием INSERT-ов, хотя может и ошибаюсь.
Да, Оракл в общем может такое делать. Да я и не спорю против этого, а вот что мне не нравится так это то что автор явно не осознает зачем такая конвертация ему нужна - обрати внимание он пытается напрячь этим делом клиентскую машину не осознавая что тем самым напрягает и сервер Оракла, причем весьма бессмысленно. Даже если предстоит решить задачу локализации БД (или некоего его куска, отрезанного для использования на машинах, не подключенных к сети, или по другим причинам не доступных серверу) зачем выбрал Парадокс?
Ведь это самая ненадежная из существующих на сегодня БД.
Уже выбрал бы более простой DBF, или более надежный и на сегодня оч. популярный XML (MyBase типа к примеру).
В общем мне бы хотелось услышать от автора ответ - почему именно такая стратегия.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скопировать значения blob поля из одной таблицы в другую BDE Paradox astecenko БД в Delphi 1 02.12.2011 11:26
Как скопировать данные из таблицы, включающей пустые строки yursanch Microsoft Office Excel 5 22.09.2010 16:07
скопировать часть таблицы по условию Sunix Microsoft Office Excel 12 05.08.2010 21:25
Как скопировать данные таблицы из одной базы access в другую? AK BULLETS БД в Delphi 2 31.03.2010 13:09
Оракл MAcK БД в Delphi 0 23.07.2007 15:24