簡體   English   中英

具有外鍵的表將無法編譯(此列列表沒有匹配的唯一鍵或主鍵)

[英]Table with foreign key won't compile (no matching unique or primary key for this column-list)

我創建了兩個表,其中包含一些列和所有其他內容。 而且我收到錯誤消息“此列列表沒有匹配的唯一鍵或主鍵”,但是我不知道我缺少什么...

這是基本的主鍵和外鍵表,不會編譯。 我已經上網檢查了幾個小時,卻一無所獲。

create table TP2_ITEM_FAVORI (
    NOM_UTILISATEUR varchar2(30) not null,
    NO_ITEM number(6) not null,
    constraint PK_ITEM_FAV primary key(NOM_UTILISATEUR, NO_ITEM));

create table TP2_UTILISATEUR (
    NOM_UTILISATEUR varchar2(30) not null,
    NO_ENCAN number(6) not null,
    MOT_DE_PASSE_UTI varchar(30) not null,
    NOM_UTI varchar2(20) not null,
    PRENOM_UTI varchar2(20) not null,
    TEL_UTI char(13) not null,
    COURRIEL_UTI varchar2(25) not null,
    TYPE_UTI varchar(20) not null,
    NOM_UTILISATEUR_PARENT varchar2(30) not null,
    constraint PK_UTILISATEUR primary key(NOM_UTILISATEUR),
    constraint AK_NOM_PRENOM_TEL_UTI unique(NOM_UTI, PRENOM_UTI, TEL_UTI),
    constraint AK_COURR_UTI unique(COURRIEL_UTI),
    constraint FK_NOM_UTILISATEUR_UTI foreign key(NOM_UTILISATEUR) references
    TP2_ITEM_FAVORI(NOM_UTILISATEUR));

外鍵必須是另一個表的主鍵或唯一列: https : //www.techonthenet.com/oracle/errors/ora02270.php

TP2_UTILISATEUR ,你引用TP2_ITEM_FAVORI(NOM_UTILISATEUR)作為一個外鍵,但NOM_UTILISATEUR不是主鍵TP2_ITEM_FAVORI TP2_ITEM_FAVORI的主鍵是(NOM_UTILISATEUR, NO_ITEM)

解決方案是將TP2_ITEM_FAVORI的主鍵更改為NOM_UTILISATEUR而不是兩列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM