简体   繁体   English

没有与此SQL匹配的唯一键或主键

[英]no matching unique or primary key for this SQL

I'm trying to write this code 我正在尝试编写这段代码

CREATE TABLE BOOK
(BOOKNO NUMBER(4) PRIMARY KEY NOT NULL,
BTIME NUMBER(24,22),
CNAME VARCHAR2(10) ,
BTYPE VARCHAR2(13),
TABLENO NUMBER(2),
EMPNO NUMBER(4),
ENAME VARCHAR2(10),
BDATE  DATE DEFAULT '23-MAR-13',
FOREIGN KEY (CNAME) REFERENCES BOOK (CNAME));

but it shows me that I have this error for creating my foregin key 但它告诉我创建我的前例键时遇到此错误

ERROR at line 10: 第10行出现错误:
ORA-02270: no matching unique or primary key for this column-list ORA-02270:此列列表没有匹配的唯一键或主键

Oracle/PLSQL: ORA-02270 Error Oracle / PLSQL:ORA-02270错误

You tried to reference a table using a unique or primary key, but the columns that you listed did not match the primary key, or a primary key does not exist for this table. 您试图使用唯一键或主键来引用表,但是您列出的列与主键不匹配,或者该表不存在主键。

CREATE TABLE BOOK
(BOOKNO NUMBER(4) PRIMARY KEY NOT NULL,
BTIME NUMBER(24,22),
CNAME VARCHAR2(10) ,
BTYPE VARCHAR2(13),
TABLENO NUMBER(2),
EMPNO NUMBER(4),
ENAME VARCHAR2(10),
BDATE  DATE DEFAULT '23-MAR-13',
FOREIGN KEY (CNAME) REFERENCES BOOK (BOOKNO));

UPDATE 更新

CREATE TABLE BOOK
    (BOOKNO NUMBER(4) PRIMARY KEY NOT NULL,
    BTIME NUMBER(24,22),
    CNAME VARCHAR2(10) NOT NULL UNIQUE,
    BTYPE VARCHAR2(13),
    TABLENO NUMBER(2),
    EMPNO NUMBER(4),
    ENAME VARCHAR2(10),
    BDATE  DATE DEFAULT '23-MAR-13',
    FOREIGN KEY (CNAME) REFERENCES BOOK (CNAME));

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

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