【问题标题】:Error report - ORA-02253: constraint specification not allowed here错误报告 - ORA-02253:此处不允许约束规范
【发布时间】:2019-03-20 02:02:59
【问题描述】:

我想在下表中创建此表,但出现错误,我不明白为什么,有人可以解释一下吗?

CREATE TABLE STUD (
    RNO NUMBER(3) CONSTRAINT PK_RNO_STUD PRIMAY KEY,
    SNAME VARCHAR2(15) CONSTRAINT NN_SNAME_STUD NOT NULL,
    COURSE VARCHAR2(10) CONSTRAINT NN_COURSE_STUD NOT NULL,
    FEE NUMBER(5) CONSTRAINT NN_FEE_STUD NOT NULL,
    MOBILE NUMBER(10) CONSTRAINT UK_MOBIE_STUD UNIQUE,
    CONSTRAINT CK_RNO_STUD CHECK(RNO BETWEEN 1 AND 60),
    CONSTRAINT CK_COURSE_STUD CHECK(COURSE IN('ORACLE','SQL SERVER','UNIX')),
    CONSTRAINT CK_FEE_STUD CHECK(FEE BETWEEN 5000 AND 10000)
);

错误报告 - ORA-02253:此处不允许约束规范 02253. 00000 - “此处不允许约束规范” *原因:声明中不允许使用约束规范。 *操作:从语句中删除约束规范。

【问题讨论】:

    标签: sql oracle


    【解决方案1】:

    你拼错了PRIMARY KEY:

    CREATE TABLE STUD (
        RNO NUMBER(3) CONSTRAINT PK_RNO_STUD PRIMARY KEY,
        SNAME VARCHAR2(15) CONSTRAINT NN_SNAME_STUD NOT NULL,
        COURSE VARCHAR2(10) CONSTRAINT NN_COURSE_STUD NOT NULL,
        FEE NUMBER(5) CONSTRAINT NN_FEE_STUD NOT NULL,
        MOBILE NUMBER(10) CONSTRAINT UK_MOBIE_STUD UNIQUE,
        CONSTRAINT CK_RNO_STUD CHECK(RNO BETWEEN 1 AND 60),
        CONSTRAINT CK_COURSE_STUD CHECK(COURSE IN('ORACLE','SQL SERVER','UNIX')),
        CONSTRAINT CK_FEE_STUD CHECK(FEE BETWEEN 5000 AND 10000)
    );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-26
      • 1970-01-01
      相关资源
      最近更新 更多