shijun ma
shijun ma

Reputation: 3

I can't create table error ORA_00903

DROP TABLE Orders CASCADE CONSTRAINTS;

DROP TABLE Order_Items CASCADE CONSTRAINTS;

CREATE TABLE Orders (

    ORDER_NO VARCHAR(5),
    ORDER_DATE DATE CONSTRAINT BNL_ORDER_DATE_NN NOT NULL,
    CUSTOMER_NAME VARCHAR(20) CONSTRAINT BNL_CUSTOMER_NAME_NN NOT NULL,
    POSTAGE NUMBER(5,2) CONSTRAINT BNL_POSTAGE_NN NOT NULL,
    TOTAL NUMBER(10,2) CONSTRAINT BNL_TOTAL_NN NOT NULL,
    CONSTRAINT ORD_ID_PK PRIMARY KEY (ORDER_NO)
    );

CREATE TABLE Order_ITEMS (

    ITEM_NO VARCHAR(10),
    ITEM_DES VARCHAR(20),
    IETM_SIZE VARCHAR(5) CONSTRAINT ITE_ITEM_SIZE_NN NOT NULL,
    ITEM_COST NUMBER(10,2) CONSTRAINT ITE_ITEM_COST_NN NOT NULL,
    QTY NUMBER(5) CONSTRAINT ITE_QTY_NN NOT NULL,
    ORDER_NO NUMBER(5),
    CONSTRAINT ITE_ID_PK PRIMARY KEY (ITEM_NO),
    CONSTRAINT ITE_ORD_FK FOREIGN KEY(ORDER_NO)
    REFERENCES ORDER(ORDER_NO)
    );

The Orders table is working but the Order_Items table is not working show error ORA_00903. I had change many other names, but it still show the error ORA-00903: invalid table name.

Upvotes: 0

Views: 40

Answers (1)

Lord Peter
Lord Peter

Reputation: 3501

Your foreign key constraint is incorrect:

CONSTRAINT ITE_ORD_FK FOREIGN KEY(ORDER_NO)
REFERENCES ORDER(ORDER_NO)
                ^

You have named the referenced table ORDER instead of ORDERS.

Upvotes: 1

Related Questions