Как мне смоделировать отношение 1: N, которое ограничено третьим объектом? - PullRequest
0 голосов
/ 06 мая 2011

Мое затруднительное положение: Чен моделирует бухгалтерскую базу данных, в которой отношение клиента к объекту счета одно-ко-многим (1: N), но отношение клиента к office_location уникально (один к одному, 1 : 1). Я попытался изобразить троичные отношения, а также преобразовать их в слабую сущность, привязанную к остальным трем через бинарные отношения. Я получаю что-то вроде этого:

OFFICE_LOC --- SERVES (M: N) === КЛИЕНТ

OFFICE_LOC --- ЯКОРЬ (1: N) === АККАУНТ (МЫ)

КЛИЕНТ === СОБСТВЕННИКИ (1: N) === СЧЕТ (МЫ)

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

1 Ответ

0 голосов
/ 06 мая 2011

Я не знаю, спрашиваете ли вы конкретно, как моделировать что-то в моделировании Чена (о чем я знаю НИЧЕГО ) или вы спрашиваете, как моделировать эти отношения.Если первый игнорирует этот ответ, если последний ...

Клиент <--- Client_2_Account ---> Учетная запись

Таблица «многие ко многим» в Client_2_Account будет иметь поле fkey Office_Locationв дополнение к полям fkey для клиента и учетной записи.Установите уникальное ограничение на составной ключ client / office_location и уникальный ключ для учетной записи.Тогда клиент может иметь только одну запись учетной записи для местоположения офиса, и каждая запись учетной записи может принадлежать только одному клиенту.

...