这个问题是什么错误,请给我解释一下

时间:2019-11-14 09:38:46

标签: mysql sql

CREATE TABLE doctor(
    Did varchar(30) not null,
    spid int,
    Hid int,
    Dname varchar(200)not null,
    Dnumber int,
    fee decimal(10,2)not null,
    constraint primary key(Did),
    constraint unique(Did,Dname),
    constraint foreign key(spid)references speciality(spid)
    on delete cascade on update cascade, 
    constraint foreign key(Hid)references hospital(Hid)
    on delete cascade on update cascade
    )engine=innodb;

1 个答案:

答案 0 :(得分:0)

很难给出没有错误消息或您使用的mysql版本的答案,但是我建议确保还定义了特殊的spid列为int,而不是int(11)或unsigned int(其他外键参考)。 而且您的主键已经是唯一的,在其他唯一约束中我看不到任何要点。