2013-04-02 3 views
0

Во время подготовки моей реляционной модели я застрял в переводе ограничения типа {XOR}.Исключение-исключение

Вот пример: У меня есть файл, который является эквивалентным кредит заявителем (пользователь) и это также подтверждено валидатора (другой пользователь) но есть исключение ограничений заявитель не может быть валидатор в ту же папку.

Как я могу перевести его за мой стол?

Dossier_Equi (num_dosier, # applicant # validator ......) 

enter image description here

ответ

1

Во-первых, обратите внимание, что это не тип ограничения (то есть ограничение между двумя классификаторов) но ассоциации ограничение. Затем обратите внимание, что the xor constraint specifies that objects of a class may participate in, at most, one of the associations at a time.

Constraint:

Заявитель не должен быть валидатор.

SQL-эквивалент будет:

CHECK (validator IS NULL OR applicant<>validator) 

(как таблицы ограничений, так как оно применяется к различным столбцам).

Однако MySQL не поддерживает ограничения проверки SQL. В другом вопросе для этой цели есть a suggerence for using BEFORE INSERT/UPDATE triggers.

+0

Благодарим вас за сотрудничество :) –