powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Ограничение или тригер ?
4 сообщений из 4, страница 1 из 1
Ограничение или тригер ?
    #34570778
Snik_666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если есть таб. Days(day,value) , где value(1-раб,0-Нераб,3-праздник)
то как установить правила на таблицу чтобы количество нерабочих дней не привысило количество дней в месяце если в таблицу вводятся даные примерно так:
01.01.07 3
02.01.07 1 ????
...
Рейтинг: 0 / 0
Ограничение или тригер ?
    #34570802
Фотография Анатолий Иванов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Snik_666Если есть таб. Days(day,value) , где value(1-раб,0-Нераб,3-праздник)
то как установить правила на таблицу чтобы количество нерабочих дней не привысило количество дней в месяце если в таблицу вводятся даные примерно так:
01.01.07 3
02.01.07 1 ????
Если поле day (я так понимаю в итоге полная дата хранится?) - первичный ключ, то как кол-во нерабочих дней превысит общее число дней в месяце?
...
Рейтинг: 0 / 0
Ограничение или тригер ?
    #34570808
Snik_666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да первичный ключ. Да фактически так небывает(чтоб количество нерабочих больше) но практически мне необходимо сделать чтоб нельзя было всем дням месяца не поставили значение 0
...
Рейтинг: 0 / 0
Ограничение или тригер ?
    #34570998
Snik_666Да первичный ключ. Да фактически так небывает(чтоб количество нерабочих больше) но практически мне необходимо сделать чтоб нельзя было всем дням месяца не поставили значение 0
1. Первичный ключ не даст ввести повторяющиеся значения (дубликаты ключевого поля/полей);
2. Чтобы всем дням месяца не проставили статус нерабочего дня необходимо проверять их количество в текущем месяце в триггере.
Для простой проверки можно выставить определенное число (самые длинные каникулы в Январе, это значение и использовать в качестве максимального).
Для более сложной проверки - учесть количество праздников в каждом месяце и, соответственно, проставлять ограничения инживидуально на каждый месяц.
В еще более сложном случае - можно "интеллектуально" править статусы дней (ошибки ввода пользователя) с учетом празничных дней, месяца и т.д.
А можно вообще автоматизировать заполнение данных при помощи хранимой процедуры на основании списка празничных (и при этом нерабочих :) ) дней (положенных в отдельную таблицу) и дня недели начала года...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Ограничение или тригер ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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