Я хотел бы добавить ограничение, которое будет проверять значения из связанной таблицы.
У меня есть 3 таблицы:
CREATE TABLE somethink_usr_rel (
user_id BIGINT NOT NULL,
stomethink_id BIGINT NOT NULL
);
CREATE TABLE usr (
id BIGINT NOT NULL,
role_id BIGINT NOT NULL
);
CREATE TABLE role (
id BIGINT NOT NULL,
type BIGINT NOT NULL
);
(Если вы хотите, чтобы я установил ограничение с помощью FK, дайте мне знать.)
Я хочу добавить ограничение на somethink_usr_rel, которое проверяет type в role ( "две таблицы прочь" ), например:
ALTER TABLE somethink_usr_rel
ADD CONSTRAINT CH_sm_usr_type_check
CHECK (usr.role.type = 'SOME_ENUM');
Я пытался сделать это с помощью JOIN, но не удалось. Любая идея, как его достичь?