powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / валидация на агрегатной функиции, ктонить такое делал? ))
3 сообщений из 3, страница 1 из 1
валидация на агрегатной функиции, ктонить такое делал? ))
    #39437940
Фотография Legushka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сейчас для удобства поиска разных вариантов сохранения временных отрезков (бронирование)
решил свалить расчет на пользовательский агрегат:

построчно получает все входящие строки и проверяет все необходимые условия: можно ли сохранять или нет

по сути в какой то момент (при прохождении n'ой строки) может настать ситуация что сложились все условия отказа, что нам уже никак нельзя сохранять этот отрезок времени, т.е. это стало известно еще на момент срабатывания агрегатной итерации

агрегатная функция в результате проверки вернет некое итоговое значение например -1, что дальше будет обработано как raise

а что будет если в агрегатную функцию прямо вставить raise в случае если на этом шаге сложились все условия отказа.

т.е. для проверки сохранения записи отрезка времени, запускаем выборку валидация_агрегат(дата1, дата2) по всем записям в этом пересечении времени, если она вернула результат занчит ОК, иначе она уже сваливается.

могут ли быть подводные камни?, почему этого делать нельзя? и как вам такое?
...
Рейтинг: 0 / 0
валидация на агрегатной функиции, ктонить такое делал? ))
    #39437948
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Legushka,

1 выражайтесь точнее
raise notice|warning -- тоже raise

2 сделайте 2 ф-ии. сам аггрегат . и ф-ю f(x)=x, кидающую exception на отрицателный ввод. этого вполне хватит на все случаи применения.
...
Рейтинг: 0 / 0
валидация на агрегатной функиции, ктонить такое делал? ))
    #39437997
Фотография Legushka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwwq, спасибо, именно это и хотел)
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / валидация на агрегатной функиции, ктонить такое делал? ))
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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