代码如下:
CREATE TABLE CUSTOMER
       (CNO CHAR(5) CONSTRAINT PK_CUSTOMER PRIMARY KEY,
        CNAME CHAR(20) ,
        COMPANY CHAR(30),
CITY CHAR(20) ,
TEL CHAR(15)) ;CREATE TABLE ORDERS
       (ONO CHAR(5) CONSTRAINT PK_ORDERS PRIMARY KEY,
        ORDER_DATE DATE ,
        CNO CHAR(5) CONSTRAINT FK_CNO REFERENCES CUSTOMER,
FREIGHT INT,
SHIPMENT_DATE DATE,
CITY CHAR(20),
PAYMENT_TNO CHAR(1),
STATUS CHAR(20) ) ;
CREATE TABLE PTYPE
       (TNO CHAR(1) CONSTRAINT PK_PTYPE PRIMARY KEY,
        TNAME CHAR(15) ) ;
CREATE TABLE PRODUCT
       (PNO CHAR(4) CONSTRAINT PK_PRODUCT PRIMARY KEY,
        PNAME CHAR(40) ,
        PRICE NUMBER(7,2),
TNO CHAR(1),
INVENTORY INT ) ;
CREATE TABLE ORDER_ITEMS
       (ONO CHAR(5) CONSTRAINT FK_ONO REFERENCES ORDER,
        PNO CHAR(4) CONSTRAINT FK_PNO REFERENCES PRODUCT,
        QTY INT,
DISCOUNT NUMBER(4,2),
CONSTRAINT PK_ORDER_ITEMS PRIMARY KEY(ONO,PNO) ) ;
CREATE TABLE PAYMENT
       (PAYMENT_TNO CHAR(1) CONSTRAINT PK_PAYMENT PRIMARY KEY,
        PAYMENT_TYPE CHAR(20) ) ;
一开始报"invalid character"错误,后来删了所有分号,就报这个“ORA-00922: missing or invalid option”错误了怎么办啊,快崩溃了

解决方案 »

  1.   

    我只要一个create语句一次地打就没问题为什么啊???
      

  2.   

    CREATE TABLE ORDER_ITEMS  的时候,外键声明不对.
    外键指向哪个表  references tableName(ORDER)
      

  3.   


    CREATE TABLE ORDER_ITEMS
      (ONO CHAR(5) CONSTRAINT FK_ONO REFERENCES ORDERS(ONO),
      PNO CHAR(4) CONSTRAINT FK_PNO REFERENCES PRODUCT(PNO),
      QTY INT,
    DISCOUNT NUMBER(4,2),
    CONSTRAINT PK_ORDER_ITEMS PRIMARY KEY(ONO,PNO) ) ;
      

  4.   


    CREATE TABLE ORDER_ITEMS
      (ONO CHAR(5) CONSTRAINT FK_ONO REFERENCES ORDER, --把ORDER改为ORDERS
      PNO CHAR(4) CONSTRAINT FK_PNO REFERENCES PRODUCT,
      QTY INT,
    DISCOUNT NUMBER(4,2),
    CONSTRAINT PK_ORDER_ITEMS PRIMARY KEY(ONO,PNO) ) ;表order不存在应该是orders吧