Создание утверждений в SQL - PullRequest
0 голосов
/ 13 марта 2020

Это база данных:

student_worker(name, phone, hourly_wage)
staff_worker(name, office, phone salary)
address(name, street, city)

Как бы вы go о создании утверждения SQL, которое гарантирует, что каждое имя, отображаемое в адресе отношения, присутствует либо в student_worker, либо staff_worker, но не обязательно должны быть оба?

1 Ответ

0 голосов
/ 13 марта 2020

ВЫ не делаете. То, что вы делаете, это очень плохой дизайн базы данных.

Видите, PEOPLE - это одна таблица, а не student_worker или staff_worker - это те РОЛИ, которые люди иногда имеют, но одна таблица должна быть сущностью, human_entity или чем-то еще Вы называете это.

В зависимости от базы данных, вы можете испытать удачу с триггером, но это будет действительно действительно действительно бандит из-за полностью сломанной конструкции таблицы.

И из-за реальности, потому что у вас есть фамильярности, когда у людей очень похожие имена. Вы не учитываете реальность.

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