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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.02.2009, 14:12   #1
Zaps
 
Регистрация: 26.11.2008
Сообщений: 3
По умолчанию Проблема выгрузки большого списка в Access

Всем привет. Никто не сталкивался с такой проблемой?

Необходимо выгрузить большой список (>100 тыс. записей) из TList в таблицу Access. Использую TADOConnection+TADOTable.
Записи отстортированы по дате и времени. Выгружаю в цикле (для примера упростил):

with Table do begin
Open;
for i := 0 to List.Count-1 do begin
Append;
FieldNames['D'] := Items[i]^.D;
FieldNames['T'] := Items[i]^.T;
Post;
end;
Close;
end;

Вроде примитивный цикл и проблем быть не должно. Однако при просмотре файла .mdb обнаруживаю, что хотя исходный список был отсортирован и выгружался последовательно, в файле часть дат переместилась выше/ниже положенного, т.е. нарушился порядок сортировки. Причем сбои наблюдаются "кусками", т.е. такое впечатление, что часть записей была выгружена с опозданием.

Есть подозрение, что проблемы не в коде, а в какой-то буферизации, может быть в MS Jet OLE. Цикл быстрый, пробовал вводить задержки Sleep(), не помогло.

Прошу помощи, а то уже подумываю о переходе на InterBase/Firebird, если не решу проблему с Access.
Zaps вне форума Ответить с цитированием
Старый 25.02.2009, 13:47   #2
S@fer
Форумчанин
 
Аватар для S@fer
 
Регистрация: 29.01.2009
Сообщений: 411
По умолчанию

Попробуй в цикл вставить
Application.ProcessMessages;
S@fer вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
До проги не доходит сигнал выгрузки операционной системы Altera Общие вопросы Delphi 6 30.08.2008 18:03
Проблема с записью большого файла Rembo Свободное общение 17 17.06.2008 12:47
создание БД Access в Delpi и проблема!!! bmb_66 БД в Delphi 4 02.01.2008 10:48
В combobox выбирать данные из списка таблицы (Access) Inbox БД в Delphi 1 15.06.2007 10:45