SAP HANA -opetusohjelma: Luo jakso

Anonim

Mikä on sekvenssi?

Sekvenssi on tietokantaobjekti, joka luo automaattisesti kasvavan numeeristen arvojen luettelon sarjan erittelyssä määritellyn säännön mukaisesti.

Esimerkiksi työntekijänumeron lisääminen automaattisesti taulukon sarakkeeseen (EMPLOYEE_NO), kun uusi tietue lisätään taulukkoon, käytämme järjestystä.

Sekvenssiarvot luodaan nousevassa tai laskevassa järjestyksessä.

Sekvenssejä ei liitetä taulukoihin; niitä käytetään sovelluksessa. On kaksi arvoa peräkkäin -

  • CURRVAL - Anna sekvenssin nykyinen arvo.
  • NEXTVAL - Anna sekvenssin seuraava arvo.

SYNTAKSI

LUO Sekvenssi  [] [NOLLAA ]

Syntaksielementit

ELEMENTIT KUVAUS
Se on sekvenssin nimi.
[] Se määrittää yhden tai useamman sekvenssiparametrin.
ALOITA -kohdasta Se kuvaa aloitussekvenssin arvon.
LISÄYS Tämä määrittää arvon, joka lisätään viimeisestä määritetystä arvosta kullekin uudelle sekvenssiarvolle. Oletusarvo on 1.
MAXVALUE Tämä määrittää maksimiarvon, jonka sekvenssi voi generoida. voi olla välillä -4611686018427387903 ja 4611686018427387902.
EI MAKSiarvoa Kun NO MAXVALUE on määritetty, nousevalle jaksolle suurin arvo on 4611686018427387903 ja laskevan sekvenssin vähimmäisarvo on -1.
MINVALUE / EI MINVALUE Se määrittää vähimmäisarvon, jonka jakso voi tuottaa. voi olla välillä -4611686018427387904 - 4611686018427387902. Kun käytetään NO MINVALUE -arvoa, nousevan sekvenssin vähimmäisarvo on 1
SYKLI CYCLE-direktiivi määrittää, että järjestysnumero käynnistetään uudelleen, kun se saavuttaa enimmäis- tai vähimmäisarvonsa.
EI SYKLIÄ NO CYCLE -direktiivi ei määritä, että järjestysnumeroa ei aloiteta uudelleen, kun se saavuttaa enimmäis- tai vähimmäisarvonsa.
Välimuisti / Välimuistin koko määrittää, mikä sarjanumeroiden alue välimuistiin solmuun. on oltava allekirjoittamaton kokonaisluku.
EI välimuistia Oletusasetus. NO CACHE -direktiivi määrittää, että järjestysnumeroa ei tallenneta välimuistiin solmuun.
NOLLAA Se määrittää, että tietokannan uudelleenkäynnistyksen aikana tietokanta suorittaa automaattisesti ja sekvenssiarvo käynnistetään uudelleen palautetulla arvolla.

Esimerkki -

Luomme sekvenssin nimeltä DHK_SCHEMA.EMP_NO, joka luo sekvenssin lisäyksen arvoon +1 joka kerta, kun sekvenssiä käytetään.

Jaksosarja -

LUO Sekvenssi DHK_SCHEMA.EMP_NO ALOITA 100 LISÄYKSELLÄ 1. 

Tässä käytetään objektin "sekvenssi" alla olevassa esimerkissä lisäämään työntekijän ei arvoa +1: llä joka kerta, kun valittu kysely suoritetaan. Kyselyssä "nextval" voidaan käyttää sarjanumeron luomiseen tai samantyyppisiin vaatimuksiin.

Sekvenssin käyttö -

VALITSE DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;

LÄHTÖ - 100101102

… Joten jokaisen yllä olevan kyselyn suorittamisen yhteydessä.