602SQL-Úplná dokumentace Index  

Příkaz ALTER SEQUENCE (SQL)

příkaz_ALTER_SEQUENCE :== ALTER popis_sekvence

Příkaz ALTER SEQUENCE modifikuje existující definici sekvence nebo mění příští hodnotu sekvence. Stará definice bude přepsána novou podle popisu.

Při modifikování sekvence se parametry neuvedené v příkazu ALTER SEQUENCE zachovají z původní definice sekvence.

Sekvence po modifikaci bude pokračovat v číselné řadě jako před modifikací, s výjimkou dvou případů: je-li v příkazu uvedena mezi měněnými parametry klauzule RESTART WITH nová_hodnota, nastaví se jako příští hodnota sekvence nová_hodnota; je-li příkaz ve tvaru ALTER SEQUENCE jméno; (tj. bez parametrů sekvence), provede se nastavení hodnoty na počáteční hodnotu (reset sekvence).

V popisu sekvence v příkazu ALTER SEQUENCE nelze použít klauzuli AS pro specifikaci typu.

Provedení tohoto příkazu vždy ukončí otevřenou transakcí.

Alternativně lze sekvenci modifikovat z řídicího panelu vývojového prostředí 602SQL.


Příklad:

Při inicializaci změnit příští hodnotu sekvence na hodnotu o jedna větší než je maximální hodnota klíče v tabulce:

  DECLARE maxid INT;
  SELECT MAX(id)+1 INTO maxid FROM Tab;

  CALL SQL_execute('ALTER SEQUENCE seqx RESTART WITH '||Int2str(maxid));

Odlišnosti od normy

Viz