Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > rs1!поле1 = rs2!поле2 медленно работает (DAO,97)


Автор: basiltsvetkov 22.4.2006, 14:50
Здравствуйте коллеги.

перекидываем много записей 

rs1 - могучий SELECT ..... порядка 100тыс записей 
rs2 - табличный рекордсет (просто таблица)

делаем вот что:

rs2.addnew
rs2!поле21 = rs1!поле11
rs2!поле22 = rs1!поле12
...
еще десятка два полей заполняем из рекордсета или вычисленными ранее значениями 
...
rs2.update

замеры скорости показали :
весь фрагмент закомментирован - 6000 зап/с
весь фрагмент кроме addnew закомментирован - 4000 зап/с
весь фрагмент раскомментирован кроме update - 2000 зап/с
весь фрагмент раскомментирован - 800 зап/с

Вот оказывается в этом простом фрагменте простое заполнение полей новой записи (или чтение из рекордсета-источника) занимает уйму времени.
Ну и еще непонятно почему addnew тоже занимает время, ведь данные таблицы она не обрабатывает(только новое значение счетчика получает).

Может коллеги еще помнят тонкости DAO и что нибудь посоветуют? 

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