Oracle
 sql >> Database >  >> RDS >> Oracle

Come generare automaticamente l'identità per un database Oracle tramite Entity Framework?

StoreGeneratedPattern="Identity" dice semplicemente a EF che il valore verrà generato lato DB all'inserimento e che non dovrebbe fornire un valore nelle istruzioni di inserimento.

Devi ancora creare una sequenza in Oracle:

create sequence ComplaintIdSequence minvalue 1 maxvalue 9999999 start with 1 increment by 1;

e un trigger per fare in modo che gli inserimenti di tabelle lo utilizzino:

create or replace trigger CommplaintIdTrigger  
before insert on comment for each row 
begin 
  if :new.ComplaintId is null then select ComplaintIdSequence.nextval into :new.ComplaintId from dual; 
  endif; 
end;