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

Combinazione di istruzioni DDL e DML in un unico script

Un modo efficiente per impostare tale valore sarebbe:

UPDATE RETAILER SET RETAILER_ID = ROWNUM;

... e poi creando la sequenza, leggendo il numero di righe in RETAILER per impostare il valore START WITH (un po' di banale PL/SQL e SQL dinamico).

12c supporta:

CREATE SEQUENCE RETAILER_ID_SEQ;
ALTER TABLE RETAILER ADD (RETAILER_ID NUMBER DEFAULT RETAILER_ID_SEQ.NEXTVAL NOT NULL );

... a proposito, quindi non c'è bisogno di definire il tuo trigger.

http://docs.oracle.com/database/121/SQLRF/statements_3001 .htm