繁体   English   中英

SQL 外键未被另一个表引用

[英]SQL foreign key is not referenced by another table

我如何将以下外键与该表相关联?

我想要的是在time_slotcheckup _appt表之间time_slot关系。 我希望能够建立一对多的关系,或者一对多的关系

CREATE TABLE time_slot
(
    slot_id varchar(4),
    adoption_id varchar(8),
    day varchar(1),
    req_appt_id varchar(8),
    start_hr numeric(2) check (start_hr >= 0 and start_hr < 24),
    start_min numeric(2) check (start_min >= 0 and start_min < 60),
    end_hr numeric(2) check (end_hr >= 0 and end_hr < 24),
    end_min numeric(2) check (end_min >= 0 and end_min < 60),

    primary key (slot_id, req_appt_id, adoption_id),
);
 
CREATE TABLE well_check_up 
(
    slot_id varchar(4),
    adoption_id varchar(8),
    req_appt_id varchar(8),
    day varchar(1),

    PRIMARY KEY (slot_id, req_appt_id, adoption_id),
    FOREIGN KEY (req_appt_id) REFERENCES time_slot (slot_id, req_appt_id, adoption_id)
);
 

你的primary Key 主键(time_slot_id, day,start_min,req_appt_id,adoption_id),); 在时隙上,是一个组合主键。 您需要在well_check 上引用所有这些,而不仅仅是req_appt_id。

像这样

 Reference Time_slot(time_slot_id, 
 day,start_min,req_appt_id,adoption_id).

这意味着您还必须在 Well_check 上添加这些列。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM