На такой таблице R (ABCDE) мне нужен триггер SQL, который предотвращает совпадение столбцов A и B кортежа, но пытается присвоить C другое значение - PullRequest
0 голосов
/ 28 апреля 2020

В кортежах таблицы R (ABCDE), если A и B одинаковы, тогда C также одинаковое значение. Мне нужен триггер, который предотвращает нарушение этого правила при обновлении таблицы.

enter image description here

1 Ответ

0 голосов
/ 28 апреля 2020

Это слишком долго для комментария.

Этот вопрос указывает на недочет в модели данных. Если C зависит от A и B, у него должна быть собственная таблица. Я думаю, что модель данных должна быть исправлена.

У вас должна быть таблица AB:

AB_ID    A     B     C

В этой таблице комбинация A / B будет уникальной.

Ваша таблица затем удалит три столбца A, B и C и заменит их на AB_ID.

Вуаля! Вы можете смоделировать данные правильно, и вам не нужно использовать триггер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...