Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Primärschlüssel der automatisch generierten Oracle SQL-Identität

Identitätsspalten ist eine Funktion, die von Oracle ab Version 12c unterstützt wird.
In Oracle 11 funktioniert es nicht, Sie müssen eine Sequenz und einen Trigger verwenden, auf diese Weise:

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;
/