sql >> Base de Datos >  >> RDS >> Oracle

Mezclar declaraciones DDL y DML en un solo script

Una forma eficiente de establecer ese valor sería:

UPDATE RETAILER SET RETAILER_ID = ROWNUM;

... y luego creando la secuencia, leyendo el número de filas en MINORISTA para establecer el valor COMENZAR CON (un poco de PL/SQL trivial y SQL dinámico).

12c admite:

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

... por cierto, así que no es necesario que definas tu propio disparador.

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