ORA-02270错误

时间:2013-10-02 02:33:57

标签: sql oracle database-design foreign-keys

我尝试使用外键创建一个表到另一个表,但我不知道为什么会出现此错误

  

ORA-02270:此列列表没有匹配的唯一键或主键

每次尝试都会不断弹出,请帮帮我

CREATE TABLE usuarios(
    username VARCHAR2(100),
    cedula VARCHAR2(100),
    ultimoAcceso DATE,
    CONSTRAINT Pk PRIMARY KEY (cedula,username)
    ) ;

CREATE TABLE pagoPlanillas(
    ced VARCHAR2(100),
    fecha DATE,
    detalle VARCHAR2(100),
    salario VARCHAR2(100),
    CONSTRAINT FK1 FOREIGN KEY(ced) REFERENCES usuarios(cedula)
    ) ;

2 个答案:

答案 0 :(得分:1)

(cedula,username)是复合键。通过组合这两列,您将在“Usuarios”表中创建主键。如果您只引用表pagoplanillas中的一列,那么您将收到此错误。因为,单独的cedula列可能包含重复值而不是主键

答案 1 :(得分:0)

usuarios上的主键是由cedulausername组成的复合键。您的外键约束仅需要cedula上的索引。只需创建另一个索引。