简体   繁体   English

在SQL Developer中使用主键和外键创建表

[英]creating table in sql developer with primary and foreign keys

I'm trying to create a table with primary and foreign keys using following syntax for sql developer but it is not working. 我正在尝试使用以下针对SQL Developer的语法创建具有主键和外键的表,但是它不起作用。

Can anyone see where I am going wrong? 谁能看到我要去哪里错了?

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) 

);

You forgot the TABLE keyword. 您忘记了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) 

);

this should work 这应该工作

just create table first and then try to alter the table 只需先创建表,然后尝试更改表

ALTER TABLE Athlete ADD CONSTRAINT ATHLETE_PK PRIMARY KEY (ATHLETEID);

for foreign key try this 对于外键试试这个

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.

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