SQL Syntax Error: "Missing Right Parenthesis"

SQL Syntax Error: "Missing Right Parenthesis"

我知道 ORA-00907 表示我的代码中有语法错误,我只是找不到它。有人可以帮忙指出问题吗?我正在使用 SQL 开发人员 (Oracle12c)。

CREATE TABLE equip 
  (equipid NUMBER(3),
   edesc VARCHAR2(30), 
   purchdate DATE, 
   rating CHAR(1), 
   deptid NUMBER(2) NOT NULL, 
   etypeid NUMBER(2),
    CONSTRAINT equip_equipid_pk PRIMARY KEY (equipid),
    CONSTRAINT equip deptid_fk FOREIGN KEY (deptid) REFERENCES dept (deptid),
    CONSTRAINT equip_etypeid_fk FOREIGN KEY (etypeid) REFERENCES etypes (etypeid),
    CONSTRAINT equip_rating_ck CHECK (rating IN ('A','B','C')));

约束名称中有一个 space,这可能会混淆语法分析器:

CONSTRAINT equip deptid_fk FOREIGN KEY (deptid) REFERENCES dept (deptid),
                ^

如果您需要在标识符中使用 space,请用双引号将它们分隔开,例如 "equip deptid_fk"。但是,如果您可以在不使用白色space 或标点符号的情况下拼写您的标识符,那就更容易了。