SAP HANA Tutorial: Opret sekvens

Anonim

Hvad er sekvens?

En sekvens er et databaseobjekt, der automatisk genererer den forøgede liste over numeriske værdier i henhold til reglen som specificeret i sekvensspecifikationen.

For eksempel at indsætte medarbejdernummer automatisk i kolonne (EMPLOYEE_NO) i tabel, når en ny post indsættes i tabellen, så bruger vi sekvens.

Sekvensværdier genereres i stigende eller faldende rækkefølge.

Sekvenser er ikke knyttet til tabeller; de bruges af applikationen. Der er to værdier i rækkefølge -

  • CURRVAL - Angiv den aktuelle værdi af sekvensen.
  • NEXTVAL - Angiv den næste værdi af sekvensen.

SYNTAX

OPRET SEKVENS  [] [NULSTIL MED ]

SYNTAX ELEMENTER

ELEMENTER BESKRIVELSE
Det er navnet på sekvensen.
[] Det specificerer en eller flere sekvensparametre.
START MED Den beskriver startsekvensværdien.
FORHØJNING MED Dette specificerer den værdi, der skal forøges fra den sidste værdi, der er tildelt for hver gang der genereres en ny sekvensværdi. Standard er 1.
MAXVALUE Dette angiver den maksimale værdi, som kan genereres af sekvensen. kan være mellem -4611686018427387903 og 4611686018427387902.
INGEN MAKSVÆRDI Når NO MAXVALUE er specificeret, for en stigende sekvens, vil den maksimale værdi være 4611686018427387903, og minimumsværdien for en faldende sekvens vil være -1.
MINVALUE / NO MINVALUE Det specificerer den mindste værdi, som en sekvens kan generere. kan være mellem -4611686018427387904 og 4611686018427387902. Når NO MINVALUE anvendes, er minimumsværdien for en stigende sekvens 1
CYKLUS CYCLE-direktivet specificerer, at sekvensnummeret genstartes, når det når sin maksimale eller minimale værdi.
INGEN CYKLUS Standardindstilling. INGEN CYCLE-direktiv specificerer, at sekvensnummer ikke genstartes, når det når sin maksimale eller minimale værdi.
CACHE / Cachestørrelsen angiver, hvilket interval af sekvensnumre der skal caches i en node. skal være usigneret heltal.
INGEN CACHE Standardindstilling. NO CACHE-direktivet specificerer, at sekvensnummeret ikke caches i en node.
NULSTIL VED Det specificerer, at databasen under genstart af databasen automatisk udfører , og sekvensværdien genstartes med den returnerede værdi.

Eksempel -

Vi opretter en sekvens med navnet DHK_SCHEMA.EMP_NO, som vil skabe stigende værdi af sekvensen med +1 hver gang, når sekvensen bruges.

Sekvensskript -

OPRET SEKVENS DHK_SCHEMA.EMP_NO START MED 100 FORHØJNING MED 1. 

Her vil vi bruge objektet "sekvens" i nedenstående eksempel til at øge værdien af ​​medarbejder nr med +1 hver gang den valgte forespørgsel udføres. I forespørgslen kan "nextval" bruges til generering af serienummer eller samme type krav.

Brug af sekvens -

VÆLG DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;

UDGANG - 100.101.102

... Så på hver udførelse af ovenstående vælg forespørgsel.