Текущий архив: 2003.02.06;
Скачать: CL | DM;
ВнизИмпорт из dbf в Interbase Найти похожие ветки
← →
Sergant (2003-01-20 14:05) [0]Имеется БД-справочник на сервере Interbase. Справочник обновляется 2-3 раза в неделю из текстовых и dbf-файлов.
Предварительно вся информация из таблиц БД Interbase удаляется.
Для доступа к Interbase исп. FibPlus, а для закачки из dbf такую процедуру:
while not T1.Eof do
begin
T2.Insert;
for i:=0 to T1.FieldCount-1 do
T2.Fields[i].Value:=T1.Fields[i].Value;
T2.POst;
T1.Next;
Application.ProcessMessages;
Pr1.StepIt(1);
end;
Обновление из dbf, состоящего из 5000 записей длится полтры минуты. Если этот же код использовать при соединении с Interbase через IBX, закачка выполняется за 20-30 секунд.
Подскажите, как правильно настроить TpFIBDataSet.
← →
ufff (2003-01-20 14:08) [1]слушай, а если снять AutoCommit ? А в конце или гденибудь в промежутке сделать Commit?
← →
Delirium^.Tremens (2003-01-20 14:12) [2]Посмотри здесь:
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1042732873&n=1
← →
Sergant (2003-01-20 15:57) [3]>ufff
Пробовал. Одинаково. Делал Commit и через 50 записей, и через 100-все равно медленно.
← →
ufff (2003-01-20 16:11) [4]какая версия FIBов то?
← →
Johnmen (2003-01-20 16:14) [5]Думаю, что в данном случае лучше исп-ть BDE и запрос
INSERT INTO <T2> SELECT FROM <T1> ...
← →
Sergant (2003-01-20 17:09) [6]>ufff
4.7.7
>Johneman
Я перевожу эту прогу с версии, работающей именно через BDE с dbf-файлами на сервер InterBase, поэтому BDE сознательно не использую. Для доступа к dbf использую Halcyon 6.94
← →
Alexandr (2003-01-21 07:57) [7]неправильно настроил TpFIbDataSet.
А вообще, он тут и не нужен.
Страницы: 1 вся ветка
Текущий архив: 2003.02.06;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.011 c