Reputation: 83
How can I specify, 5 distinct values for a varchar column in Oracle Application Express?
I need a column called tipo_conta (varchar) that only accepts 'Conta a ordem', 'Multibanco', 'Rendimento', 'Jovem', 'Rendimento-Habitacao' as possible values.
I tried this but I get this error - ORA-00907: missing right parenthesis.
What am I doing wrong?
CREATE TABLE contas
(
id_conta NUMBER(6),
tipo_conta VARCHAR2(20),
CONSTRAINT id_conta PRIMARY KEY(id_conta),
CONSTRAINT tipo_conta UNIQUE (tipo_conta)
CONSTRAINT chk_tipo_conta CHECK (Frequency IN ('Conta a ordem', 'Multibanco', 'Rendimento', 'Jovem', 'Rendimento-Habitacao'))
);
Upvotes: 1
Views: 86
Reputation: 2339
Actually it looks like you are missing a comma in your CONSTRAINT CLAUSES over here:
CONSTRAINT tipo_conta UNIQUE (tipo_conta)
should instead be:
CONSTRAINT tipo_conta UNIQUE (tipo_conta),
Also your CHECK
does not reference the column properly:
Instead of CONSTRAINT chk_tipo_conta CHECK (Frequency IN ...
try CONSTRAINT chk_tipo_conta CHECK (tipo_conta IN ...
Upvotes: 1