首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >02270。00000 -“此列列表没有匹配的唯一或主键”

02270。00000 -“此列列表没有匹配的唯一或主键”
EN

Database Administration用户
提问于 2017-09-27 10:07:34
回答 1查看 309关注 0票数 0

由于某些原因,我不断地出现02270错误。不过,我不知道它有什么问题。我只知道问题在于房间表和conferencesession表。

代码语言:javascript
复制
CREATE TABLE BUILDING (
BUILDINGNO CHAR(2),
BUILDINGWING VARCHAR2(15),
BUILDINGLANE VARCHAR2(15),
CONSTRAINT BUILDING_PK PRIMARY KEY(BUILDINGNO));

CREATE TABLE SPEAKER (
SPEAKERID CHAR(2),
SPEAKERNAME VARCHAR2(20),
SPEAKERADDRESS VARCHAR2(50),
SPEAKERPHONE NUMBER(12),
CONSTRAINT SPEAKER_PK PRIMARY KEY (SPEAKERID));

CREATE TABLE ROOM (
BUILDINGNO CHAR(2),
ROOMNO CHAR(2),
ROOMCAPACITY NUMBER(3),
CONSTRAINT ROOM_PK PRIMARY KEY(ROOMNO,BUILDINGNO),
CONSTRAINT ROOM_FK1 FOREIGN KEY(BUILDINGNO)REFERENCES BUILDING(BUILDINGNO));

CREATE TABLE CONFERENCESESSION (
SESSIONID CHAR(4),
BUILDINGNO CHAR(2),
ROOMNO CHAR(2),
SPEAKERID CHAR(2),
SESSIONDATE DATE,
SESSIONPRICE NUMBER(4,2),
CONSTRAINT CONFERENCESESSION_PK PRIMARY KEY(SESSIONID),
CONSTRAINT CONFERENCESESSION_FK1 FOREIGN KEY(BUILDINGNO) REFERENCES 
BUILDING(BUILDINGNO),
CONSTRAINT CONFERENCESESSION_FK2 FOREIGN KEY(ROOMNO) REFERENCES ROOM(ROOMNO),
CONSTRAINT CONFERENCESESSION_FK3 FOREIGN KEY(SPEAKERID) REFERENCES 
SPEAKER(SPEAKERID));
EN

回答 1

Database Administration用户

发布于 2017-09-27 10:50:22

这是:

代码语言:javascript
复制
CREATE TABLE CONFERENCESESSION (
SESSIONID CHAR(4),
BUILDINGNO CHAR(2),
ROOMNO CHAR(2),
SPEAKERID CHAR(2),
SESSIONDATE DATE,
SESSIONPRICE NUMBER(4,2),
CONSTRAINT CONFERENCESESSION_PK PRIMARY KEY(SESSIONID),
CONSTRAINT CONFERENCESESSION_FK1 FOREIGN KEY(BUILDINGNO) REFERENCES 
BUILDING(BUILDINGNO),
CONSTRAINT CONFERENCESESSION_FK2 FOREIGN KEY(ROOMNO) REFERENCES ROOM(ROOMNO),
CONSTRAINT CONFERENCESESSION_FK3 FOREIGN KEY(SPEAKERID) REFERENCES 
SPEAKER(SPEAKERID));

应改为:

代码语言:javascript
复制
CREATE TABLE CONFERENCESESSION (
SESSIONID CHAR(4),
BUILDINGNO CHAR(2),
ROOMNO CHAR(2),
SPEAKERID CHAR(2),
SESSIONDATE DATE,
SESSIONPRICE NUMBER(4,2),
CONSTRAINT CONFERENCESESSION_PK PRIMARY KEY(SESSIONID),
CONSTRAINT CONFERENCESESSION_FK1 FOREIGN KEY(BUILDINGNO, ROOMNO) REFERENCES 
ROOM(BUILDINGNO, ROOMNO),
CONSTRAINT CONFERENCESESSION_FK2 FOREIGN KEY(SPEAKERID) REFERENCES 
SPEAKER(SPEAKERID));

外键需要父表中引用列的唯一或主键约束。多列约束与单列约束不可互换.

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/187031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档