J Roberson
J Roberson

Reputation: 1

Creating Table: ORA-00936: missing expression

I am getting the ORA-00936: missing expression error message when creating a table in SQL using the following command. Any ideas where I'm tripping up?

CREATE TABLE Workorders (
    Wo# VARCHAR2(8) PRIMARY KEY,
    Proj# VARCHAR2(8) REFERENCES Project (Proj#),
    Wo_desc VARCHAR2(30) NOT NULL UNIQUE,
    Wo_assigned CHAR(40),
    Wo_hours NUMBER(6) NOT NULL CHECK(>0),
    Wo_start DATE,
    Wo_due DATE,
    Wo_complete CHECK (Wo_complete IN ('Y','N')));

Upvotes: 0

Views: 1858

Answers (1)

MT0
MT0

Reputation: 168588

You can't define check constraints like that, you need the column name in the check:

CREATE TABLE Workorders (
    Wo# VARCHAR2(8) PRIMARY KEY,
    Proj# VARCHAR2(8) REFERENCES Project (Proj#),
    Wo_desc VARCHAR2(30) NOT NULL UNIQUE,
    Wo_assigned CHAR(40),
    Wo_hours NUMBER(6,0) NOT NULL CHECK ( wo_hours > 0 ),
    Wo_start DATE,
    Wo_due DATE,
    Wo_complete CHAR(1) CHECK (Wo_complete IN ('Y','N') )
);

Upvotes: 1

Related Questions