Tutorial SAP HANA: Creați secvență

Anonim

Ce este secvența?

O secvență este un obiect de bază de date care generează automat lista incrementată de valori numerice conform regulii, așa cum este specificat în specificația secvenței.

De exemplu, pentru a insera automat numărul angajaților în coloana (EMPLOYEE_NO) din tabel, atunci când este introdusă o nouă înregistrare în tabel, atunci vom folosi secvența.

Valorile secvenței sunt generate în ordine crescătoare sau descendentă.

Secvențele nu sunt asociate cu tabele; sunt utilizate de aplicație. Există două valori în ordine -

  • CURRVAL - Furnizați valoarea curentă a secvenței.
  • NEXTVAL - Furnizați următoarea valoare a secvenței.

SINTAXĂ

CREAȚI SECVENȚA  [
] [RESETARE CU ]

ELEMENTE DE SINTAXĂ

ELEMENTE DESCRIERE
Este numele secvenței.
[] Specifică unul sau mai mulți parametri de secvență.
ÎNCEPEȚI CU Descrie valoarea secvenței de pornire.
INCREMENT CU Aceasta specifică valoarea care trebuie incrementată de la ultima valoare atribuită pentru fiecare dată când se generează o nouă valoare a secvenței. Valoarea implicită este 1.
MAXVALUE Aceasta specifică valoarea maximă, care poate fi generată de secvență. poate fi între -4611686018427387903 și 4611686018427387902.
FARA MAXIMAL Când se specifică NO MAXVALUE, pentru o secvență ascendentă, valoarea maximă va fi 4611686018427387903 și valoarea minimă pentru o secvență descendentă va fi -1.
MINVALUE / FĂRĂ MINVALUE Specifică valoarea minimă pe care o secvență o poate genera. poate fi între -4611686018427387904 și 4611686018427387902. Când se folosește NO MINVALUE, valoarea minimă pentru o secvență ascendentă este 1
CICLU Directiva CYCLE specifică faptul că numărul secvenței va fi repornit după ce va atinge valoarea sa maximă sau minimă.
FARA CICL Opțiune implicită. Nicio directivă CYCLE specifică faptul că numărul secvenței nu va fi repornit după ce va atinge valoarea maximă sau minimă.
CACHE / Dimensiunea cache specifică ce gamă de numere de secvență va fi stocată în cache într-un nod. trebuie să fie un număr întreg nesemnat.
FARA CACHE Opțiune implicită. Directiva NO CACHE specifică faptul că numărul secvenței nu va fi stocat în cache într-un nod.
RESETARE CU Specifică faptul că în timpul repornirii bazei de date, baza de date execută automat și valoarea secvenței este repornită cu valoarea returnată.

Exemplu -

Vom crea o secvență cu numele DHK_SCHEMA.EMP_NO, care va crea valoarea incrementată a secvenței cu +1 de fiecare dată, când secvența este utilizată.

Script de secvență -

CREAȚI SECVENȚA DHK_SCHEMA.EMP_NO ÎNCEPEȚI CU 100 INCREMENT PENTRU 1. 

Aici vom folosi obiectul „secvență” din exemplul de mai jos pentru a crește valoarea angajatului nu cu +1 de fiecare dată când se execută interogarea selectată. În interogare, „nextval” poate fi utilizat pentru generarea numărului de serie sau același tip de cerință.

Utilizarea secvenței -

SELECȚIONEAZĂ DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;

IEȘIRE - 100.101.102

... Deci, la fiecare executare a interogării de mai sus, selectați