Вниз
Скачать: 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.022 c
14-1095581103
Константинов
2004-09-19 12:05
2004.10.10
Восстановление файлов


14-1095514391
cyborg
2004-09-18 17:33
2004.10.10
Прикольнуться чтоли над буржуями :)


14-1095903898
Думкин
2004-09-23 05:44
2004.10.10
С днем рождения! 23 сентября


3-1094727068
Still Swamp
2004-09-09 14:51
2004.10.10
ADO + MSSQL


4-1093986950
S@shka
2004-09-01 01:15
2004.10.10
нет работает SetWaitableTimer




   Наверх