我想添加一個約束,將檢查相關表中的值。約束來檢查從遠程相關表(通過連接等)的值
我有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
,檢查在role
type
(」兩張桌子遠「),例如:
ALTER TABLE somethink_usr_rel
ADD CONSTRAINT CH_sm_usr_type_check
CHECK (usr.role.type = 'SOME_ENUM');
我試着用JOIN
s到這樣做,但沒有成功。任何想法如何實現它?