SAP HANA-zelfstudie: Reeks maken
Wat is volgorde?
Een reeks is een databaseobject dat automatisch de opgehoogde lijst met numerieke waarden genereert volgens de regel zoals gespecificeerd in de reeksspecificatie.
Om bijvoorbeeld het werknemersnummer automatisch in de kolom (EMPLOYEE_NO) van de tabel in te voegen, gebruiken we volgorde wanneer een nieuw record in de tabel wordt ingevoegd.
Reekswaarden worden gegenereerd in oplopende of aflopende volgorde.
Reeksen zijn niet aan tabellen gekoppeld; ze worden gebruikt door de applicatie. Er zijn twee waarden in volgorde –
- CURRVAL – Geef de huidige waarde van de reeks op.
- NEXTVAL – Geef de volgende waarde van de reeks op.
SYNTAXIS
CREATE SEQUENCE <sequence_name> [<sequence_parameter_list>] [RESET BY <subquery>]
SYNTAXISCHE ELEMENTEN
ELEMENTS | PRODUCTBESCHRIJVING |
---|---|
Het is de naam van de reeks. | |
[ ] | Het specificeert een of meer sequentieparameters. |
BEGINNEN MET | Het beschrijft de waarde van de startreeks. |
VERHOGING DOOR | Dit specificeert de waarde die moet worden verhoogd vanaf de laatst toegewezen waarde voor elke keer dat er een nieuwe reekswaarde wordt gegenereerd. De standaardwaarde is 1. |
MAXIMUM WAARDE | Dit specificeert de maximale waarde die door de reeks kan worden gegenereerd. kan tussen -4611686018427387903 en 4611686018427387902 liggen. |
GEEN MAXWAARDE | Wanneer NO MAXVALUE is opgegeven, is voor een oplopende reeks de maximumwaarde 4611686018427387903 en is de minimumwaarde voor een aflopende reeks -1. |
MINWAARDE / GEEN MINWAARDE | Het specificeert de minimumwaarde die een reeks kan genereren. kan liggen tussen -4611686018427387904 en 4611686018427387902. Wanneer GEEN MINWAARDE wordt gebruikt, is de minimumwaarde voor een oplopende reeks 1 |
FIETS | De CYCLE-richtlijn specificeert dat het volgnummer opnieuw wordt gestart nadat het de maximale of minimale waarde heeft bereikt. |
GEEN CYCLUS | Standaardoptie.NO CYCLE-instructie geeft aan dat het volgnummer niet opnieuw wordt gestart nadat het de maximale of minimale waarde heeft bereikt. |
CACHE / | De cachegrootte bepaalt welk bereik van volgnummers in een knooppunt wordt gecached. moet een geheel getal zonder teken zijn. |
GEEN CACHE | Standaard optie. NO CACHE-instructie geeft aan dat het volgnummer niet in de cache in een knooppunt wordt opgeslagen. |
RESETTEN DOOR | Het specificeert dat tijdens het opnieuw opstarten van de database, de database automatisch de en de reekswaarde wordt opnieuw gestart met de geretourneerde waarde. |
Voorbeeld -
We zullen een reeks maken met de naam DHK_SCHEMA.EMP_NO, die elke keer een verhoogde waarde van de reeks met +1 creëert wanneer de reeks wordt gebruikt.
Sequentiescript –
CREATE SEQUENCE DHK_SCHEMA.EMP_NO START WITH 100 INCREMENT BY 1.
Hier gebruiken we object “volgorde” in het onderstaande voorbeeld om de waarde van werknemer nr. met +1 te verhogen telkens wanneer de selectiequery wordt uitgevoerd. In de zoekopdracht kan de “nextval” worden gebruikt voor het genereren van serienummers of voor hetzelfde type vereiste.
Gebruik van reeks –
SELECT DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;
OUTPUT – 100,101,102…Dus bij elke uitvoering van de bovenstaande selectiequery.