Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: osmor
MSA 2003
Суть:
Есть таблица около 500'000 записей
В ней текстовое поле (URN) 255 символов
поле может быть как пустым так и нет
Нужно НЕ пустые поля проверить на соответствие определенным условиям и в случае НЕ соответствия изменить поле TypeError в этой же таблице.
Условия сложные (используются RegExp), по-этому проверка вынесена в функцию ( checkURN). Работает не быстро.
Что бы ускорить, хочу отправлять на проверку в функцию ТОЛЬКО те записи где поле URN не пустое.
Пишу:

UPDATE (
                    SELECT ostmp_tblObject.typeError, 
                                    ostmp_tblObject.URN 
                    FROM ostmp_tblObject 
                   WHERE (nz([URN],"")<>"")
                 )  AS s1 
SET s1.typeError = "URN IS INVALID"
WHERE checkURN([URN])=False;

Один фиг в функцию идут и записи с пустыми значениями, т.е. во внешнем запросе обрабатываются все записи из таблицы, а не только те которые должны попасть во внутренний ....WHERE (nz([URN],"")<>"")
По некоторым причинам использовать сохраненный запрос не могу... т.е. не хотел бы
Вопрос:
Что делать!!!?


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.