[英]Are recursive foreign keys also marked as primary keys? (In Oracle SQL Developer)
[英]creating table in sql developer with primary and foreign keys
我正在尝试使用以下针对SQL Developer的语法创建具有主键和外键的表,但是它不起作用。
谁能看到我要去哪里错了?
CREATE Athlete
(
ATHLETEID CHAR(4) NOT NULL,
ATHLETEFIRSTNAME VARCHAR2(20),
ATHLETELASTNAME VARCHAR2(20),
ATHLETEDOB DATE,
REPCOUNTRY VARCHAR2(12),
COACHID CHAR(4) NOT NULL,
CONSTRAINT ATHLETE_PK PRIMARY KEY (ATHLETEID),
CONSTRAINT ATHLETE_FK FOREIGN KEY (COACHID) REFERENCES COACH(COACHID)
);
您忘记了TABLE关键字。
CREATE TABLE Athlete
(
ATHLETEID CHAR(4) NOT NULL,
ATHLETEFIRSTNAME VARCHAR2(20),
ATHLETELASTNAME VARCHAR2(20),
ATHLETEDOB DATE,
REPCOUNTRY VARCHAR2(12),
COACHID CHAR(4) NOT NULL,
CONSTRAINT ATHLETE_PK PRIMARY KEY (ATHLETEID),
CONSTRAINT ATHLETE_FK FOREIGN KEY (COACHID) REFERENCES COACH(COACHID)
);
这应该工作
只需先创建表,然后尝试更改表
ALTER TABLE Athlete ADD CONSTRAINT ATHLETE_PK PRIMARY KEY (ATHLETEID);
对于外键试试这个
ALTER TABLE Athlete ADD CONSTRAINT ATHLETE_FK FOREIGN KEY (COACHID) REFERENCES COACH(COACHID);
CREATE TABLE Athlete (
ATHLETEID CHAR(4) NOT NULL,
ATHLETEFIRSTNAME VARCHAR2(20),
ATHLETELASTNAME VARCHAR2(20),
ATHLETEDOB DATE,
REPCOUNTRY VARCHAR2(12),
COACHID CHAR(4) NOT NULL,
CONSTRAINT ATHLETE_PK PRIMARY KEY (ATHLETEID),
CONSTRAINT ATHLETE_FK FOREIGN KEY (COACHID) REFERENCES COACH(COACHID)
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.