Лучший пример троичных отношений - PullRequest
2 голосов
/ 10 ноября 2010

В SQL вы можете описать бинарное отношение с помощью таблицы типа

Муж |Жена

Мы знаем, что у мужа может быть только одна жена, и наоборот, так что это соотношение 1: 1, и вы можете указать такие ограничения затрат, чтобы, если вы добавите мужа, который уже находится в таблице, вы получитеошибка, верно?

Если вы добавите третий столбец, как этот

Муж |Жена |Страна

Мы знаем, что в некоторых странах у одного мужа может быть много жен;теперь вы не можете выставлять простые калькуляции, вам приходится иметь дело с третьим столбцом.

Итак, из бинарного отношения мы получаем троичное отношение с различным поведением, которое зависит от третьего столбца.

Этот пример глуп и бесполезен, знаете ли вы какой-нибудь другой пример?(другой пример троичных отношений, когда один из столбцов изменяет поведение кортежа?)

Спасибо.

РЕДАКТИРОВАТЬ : Другая точка зрения, чтобы увидеть мою проблему:

У вас есть любое бинарное отношение внутри домена: знаете ли вы какое-либо бинарное отношение, которое меняет costraints (или поведение) при изменении домена?

1 Ответ

3 голосов
/ 10 ноября 2010

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

...