Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Chave primária de identidade gerada automaticamente do Oracle SQL


Colunas de identidade é um recurso suportado pelo Oracle a partir da versão 12c.
No Oracle 11 não funciona, você deve usar uma sequência e um gatilho, desta forma:
CREATE TABLE xpto (
id NUMBER PRIMARY KEY,
description VARCHAR2(200) NOT NULL
);

CREATE SEQUENCE xpto_seq;

set define off
CREATE OR REPLACE TRIGGER xpto_id 
BEFORE INSERT ON xpto 
FOR EACH ROW
WHEN ( new.id IS NULL )
BEGIN
   :new.id := xpto_seq.nextval;
END;
/