Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Конвертирование DBF


Автор: Гость_sksl 9.8.2003, 10:02
Как конвертировать в Oracle таблицы (базы), созданные на FoxPro и Clipper?

Автор: <Spawn> 9.8.2003, 11:41
Посмотри это Пуск>Delphi>Datapump

Автор: Medved 11.8.2003, 20:39
ИМХО проще всего написать конвертор.

Алгоритм:
1. Скриптом создаешь такую же таблицу в Oracle (только не забывай что в Oracle нет логического типа данных)
2. Открываешь локальную таблицу (FoxPro и Clipper)
3. Открываешь соединение с Oracle;
4. Открываешь транзакцию (в принципе не обязательно);
5. Устанавливаешь курсор на первую запись в локальной таблице.
6. Пробегаешся по всем записям локальной таблицы, записывая считанные записи в Oracle.
7. Закрываешь транзакцию.

Пример кода для п.5-6:
Код

with Table1 do
begin
 first;
 while not Eof do
 begin
   OraQuery1.Close;
   OraQuery1.SQL.Clear;
   OraQuery1.SQL.Add('INSERT INTO MyShema.MyTable(Field1,Field2)');
   OraQuery1.SQL.Add('VALUES(Table1.FieldByName('Field1').AsValue, Table1.FieldByName('Field2').AsValue)');
   OraQuery1.ExecSQL;
   next;
 end;
end;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)