sql >> Databáze >  >> RDS >> Oracle

Míchání příkazů DDL a DML v jediném skriptu

Efektivní způsob nastavení této hodnoty by byl:

UPDATE RETAILER SET RETAILER_ID = ROWNUM;

... a poté vytvoření sekvence, přečtení počtu řádků v RETAILER pro nastavení hodnoty START WITH (trochu triviálního PL/SQL a dynamického SQL).

12c podporuje:

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

... mimochodem, takže není třeba definovat vlastní spouštěč.

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




  1. Existuje příkaz SQL, který rozdělí to, co by byly 2 dlouhé sloupce, na několik párů sloupců?

  2. Geolokační SQL dotaz nenašel přesnou polohu

  3. MySQL Relational Division

  4. Jak se vyhnout chybě dělení nulou v SQL?