2017-01-06 18 views
1

テーブル「Oracle(ORA-02270):この列リストエラーに一致する固有キーまたは主キーがありません」を作成するときにこのエラーが発生しました。 これは初めてテーブルを作成することですが、顧客IDと製品IDの主キーを持つ顧客注文の表を作成しました。テーブル内の外部キーを参照するときのエラー

create table customer_order(
    customerID NUMBER(8), 
    productID Number(8), 
    PRIMARY KEY (customerID, productID), 
    FOREIGN KEY (customerID) REFERENCES Customer (customerID), 
    FOREIGN KEY (productID) REFERENCES Product (productID)); 

だから、この私がorginially作成したテーブル、しかし、私はこのテーブルから顧客IDとプロダクトIDを参照する新しいテーブルを作成する必要があります。私がそうするとき、私はこのエラーを受け取ります。ここで私が作成しようとしているテーブルの一例である:

create table purchase_order(
    ID Number(8) PRIMARY KEY, 
    ProductId Number(8), 
    CustomerID Number(8), 
    FOREIGN KEY (customerID) REFERENCES customer_order (customerID), 
    FOREIGN KEY (productID) REFERENCES customer_order (productID)); 

答えて

1

主キーが複合あるので、あなたは、それらを同時に参照する必要があります。

create table purchase_order(
    ID Number(8) PRIMARY KEY, 
    ProductId Number(8), 
    CustomerID Number(8), 
    FOREIGN KEY (customerID, ProductId) REFERENCES customer_order(customerID, productId) 
); 
+0

おかげで完全に働きました – jsg

関連する問題