Vodič za SAP HANA: Stvaranje sekvence

Anonim

Što je slijed?

Slijed je objekt baze podataka koji automatski generira uvećani popis numeričkih vrijednosti prema pravilu navedenom u specifikaciji slijeda.

Na primjer, za automatsko umetanje broja zaposlenika u stupac (EMPLOYEE_NO) tablice, kada je novi zapis umetnut u tablicu, tada koristimo slijed.

Vrijednosti sekvence generiraju se uzlazno ili silazno.

Nizovi nisu povezani s tablicama; koristi ih aplikacija. Dvije su vrijednosti u nizu -

  • KRIVIČNOST - Navedite trenutnu vrijednost sekvence.
  • NEXTVAL - Navedite sljedeću vrijednost niza.

SINTAKSA

STVORI SEKVENCU  [
] [VRAĆI PO 
]

SINTAKSNI ELEMENTI

ELEMENTI OPIS
To je naziv niza.
[ ] Određuje jedan ili više parametara sekvence.
POČNITE S Opisuje početnu vrijednost sekvence.
POVEĆANJE PO Ovo određuje vrijednost koju treba povećati od posljednje vrijednosti dodijeljene za svaki put kada se generira nova vrijednost sekvence. Zadana vrijednost je 1.
MAXVALUE Ovo određuje maksimalnu vrijednost koja se može generirati nizom. može biti između -4611686018427387903 i 4611686018427387902.
BEZ MAXVALUE Kada je navedena NO MAXVALUE, za uzlazni niz maksimalna vrijednost bit će 4611686018427387903, a minimalna vrijednost za silazni niz -1.
MINVALUE / NO MINVALUE Određuje minimalnu vrijednost koju niz može generirati. može biti između -4611686018427387904 i 4611686018427387902. Kada se koristi NO MINVALUE, minimalna vrijednost za uzlazni niz je 1
CIKLUS Direktiva CYCLE određuje da će se redni broj ponovno pokrenuti nakon što dosegne maksimalnu ili minimalnu vrijednost.
NEMA CIKLUSA Zadana opcija. Direktiva NO CYCLE određuje da se redni broj neće ponovno pokrenuti nakon što dosegne svoju maksimalnu ili minimalnu vrijednost.
PREDMET / Veličina predmemorije određuje koji će raspon brojeva sekvenci biti predmemorirani u čvoru. mora biti cijeli broj bez potpisa.
BEZ PREDMETA Zadana opcija. Direktiva NO CACHE određuje da se sekvencijski broj neće biti predmemoriran u čvoru.
VRAĆI PO Navodi da tijekom ponovnog pokretanja baze podataka baza podataka automatski izvršava i vrijednost sekvence se ponovno pokreće s vraćenom vrijednošću.

Primjer -

Stvorit ćemo sekvencu s imenom DHK_SCHEMA.EMP_NO, koja će stvoriti uvećanu vrijednost sekvence za +1 svaki put, kada se sekvenca koristi.

Scenarij sekvence -

STVORI SEKVENCU DHK_SCHEMA.EMP_NO POČNI SA 100 POVEĆANJA PO 1. 

Ovdje ćemo upotrijebiti "slijed objekta" u donjem primjeru da bismo povećali vrijednost zaposlenika ne za +1 svaki put kada se izvrši odabrani upit. U upitu se "nextval" može koristiti za generiranje serijskog broja ili za istu vrstu zahtjeva.

Upotreba slijeda -

ODABERI DHK_SCHEMA.EMP_NO.nextval OD LUTKE;

IZLAZ - 100,101,102

… Dakle, pri svakom izvršavanju gore navedenog upita odaberite.