Вниз
Скачать: CL | DM;

Добавление большого количества записей   Найти похожие ветки 

← →
snake1977   (2004-09-14 09:47) [0]

Здравствуйте! подскажите, пожалуйста идею, как оптимально сделать. Задача примерно такова: есть две таблицы, главная и подчиненная, в котрые надо добавить порядка 50000 записей из другой таблицы (добавлять надо ежедневно). при добавлении необходимо следить чтобы добавляемые записи не дублировали уже имеющиеся в таблице.
Я пробовал сделать таким образом:
1.береться текущая запись из таблицы источника.
2.ставлю фильтр на главную таблицу приемника, с данными записи из таблицы источника.
3.т.к. таблицы приемника связанны то автоматически происходит фильтрация подчиненной таблицы.
4.если в главное таблице приемнике после фильтрации пусто, то заполняю ее.
5. если в подчиненой таблице приемнике, записи не встретилось, то добавляю запись из таблицы источника в эту подчиненую таблицу.
6. если не конец таблицы источника, то к пункту 1

по данному алгоритму добавление записей происходит часов 5
:((
ну очень медленно :(
пробовал устанавливать индексы, пока не добился хотябы 5-и часового процесса.

таблицы парадоксовские.
тут таблицы имеют след. смысл: главная таблица выступает в качестве групирующей, т.е. например в ней зашиты категории товара, а в подчиненной его движение.


← →
ЮЮ ©   (2004-09-14 09:51) [1]

>ставлю фильтр на главную таблицу приемника, с данными записи из таблицы источника

Напиши один запрос и получи все недостающие записи сразу


← →
Digitman ©   (2004-09-14 09:52) [2]

а как этот алгоритм соотносится с организованными тобой транзакциями ? как ты управляешь ими при этом, по какой логике ?


← →
Sergey13 ©   (2004-09-14 09:54) [3]

А каков критерий дублируемости? По ключевому полю или как то еще? И каков предполагаемый процент "дубляжа"?
ИМХО можно, при наличии уникального индекса, прямо валить в приемник с обработкой исключений.


← →
Alex_Bredin ©   (2004-09-14 10:32) [4]

два BatchMove c параметром batAppend - 5 сек


← →
Alex_Bredin ©   (2004-09-14 10:41) [5]

batAppendUpdate



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
3-1094716608
Klerk
2004-09-09 11:56
2004.10.10
Два приложения используют BDE.


6-1090999462
Evgenius
2004-07-28 11:24
2004.10.10
Помогите справиться с тестом сокетов без сети.


1-1096051032
ALex G
2004-09-24 22:37
2004.10.10
Загруска вордовских файлов через Олекантейнер


4-1093940056
Loki3D
2004-08-31 12:14
2004.10.10
перезагрузка выключение компьютера под разными ОС


14-1095921507
TUser
2004-09-23 10:38
2004.10.10
Ура !(




   Наверх