powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите с update'ом
6 сообщений из 6, страница 1 из 1
Помогите с update'ом
    #32625907
juls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как в update-sql запросе, который заполняет поле номера диллера заданного диапазона товаров
('Update cards set numdiller = :numDiller where id between :diapBegin and :DiapEnd;' ) осуществлять проверку на наличие значения в этом поле (numdiller). Т.е. если в какой-либо записи введенного диапазона поле номера диллера уже заполнено, то выдавать ошибку.
...
Рейтинг: 0 / 0
Помогите с update'ом
    #32625929
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а зачем ошибку-то выдавать?
Я так понимаю, в случае, если заполнено нужно либо игнорировать апдейт (т.е. не апдейтить заполненные поля из промежутка), либо откатывать все обновление.
Что нужно?
...
Рейтинг: 0 / 0
Помогите с update'ом
    #32625962
juls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я думаю наверное откатывать, т.е. непродолжать дальше и отменить уже измененные. Но как это сделать?
...
Рейтинг: 0 / 0
Помогите с update'ом
    #32625981
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rst.open "SELECT numDiller where id between :diapBegin and :DiapEnd AND numDiler is NULL", CurrentProject.Connection, adOpenKeySet
if rst.RecordCount=0 then currentproject.connection.execute 'Update cards set numdiller = :numDiller where id between :diapBegin and :DiapEnd;'
...
Рейтинг: 0 / 0
Помогите с update'ом
    #32626236
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
Update cards set numdiller = :numDiller where (id between :diapBegin and :DiapEnd)
and (numdiller is  null)
...
Рейтинг: 0 / 0
Помогите с update'ом
    #32627036
juls
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ответы.
Правда с этим
авторrst.open "SELECT numDiller where id between :diapBegin and :DiapEnd AND numDiler is NULL", CurrentProject.Connection, adOpenKeySet
if rst.RecordCount=0 then currentproject.connection.execute 'Update cards set numdiller = :numDiller where id between :diapBegin and :DiapEnd;'
пока еще не разобралась...
Запрос осложняется тем, что существует 3 диапазона карт по 5, 10 и 20 единиц соответственно. Некоторое число карт (диапазон) каждого номинала продается одному дилеру.
Update cards set numdiller = :numDiller where (id between :diapBegin5 and :DiapEnd5) and (id between :diapBegin10 and :DiapEnd10) and (id between :diapBegin20 and :DiapEnd20) and (numdiller is null)
Проблема состоит в необходимости проверки соответствия всех введенного диапазона номиналу (полю nominal). Т.е. проверка ошибочности ввода диапазона.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите с update'ом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]