SAP HANA Tutorial: Sequenz erstellen

Was ist Sequenz?

Eine Sequenz ist ein Datenbankobjekt, das automatisch die inkrementierte Liste numerischer Werte gemรครŸ der in der Sequenzspezifikation angegebenen Regel generiert.

Um beispielsweise die Mitarbeiternummer automatisch in die Spalte (EMPLOYEE_NO) der Tabelle einzufรผgen, wenn ein neuer Datensatz in die Tabelle eingefรผgt wird, verwenden wir die Reihenfolge.

Sequenzwerte werden in aufsteigender oder absteigender Reihenfolge generiert.

Sequenzen sind nicht mit Tabellen verknรผpft; Sie werden von der Anwendung verwendet. Es gibt zwei Werte in Folge โ€“

  • CURRVAL โ€“ Geben Sie den aktuellen Wert der Sequenz an.
  • NEXTVAL โ€“ Geben Sie den nรคchsten Wert der Sequenz an.

SYNTAX

CREATE SEQUENCE <sequence_name> [<sequence_parameter_list>] [RESET BY <subquery>]

SYNTAXELEMENTE

ELEMENTS BESCHREIBUNG
Es ist der Name der Sequenz.
[ ] Es gibt einen oder mehrere Sequenzparameter an.
BEGINNEN MIT Es beschreibt den Startsequenzwert.
ERHร–HUNG UM Dies gibt den Wert an, der vom letzten zugewiesenen Wert jedes Mal erhรถht werden soll, wenn ein neuer Sequenzwert generiert wird. Der Standardwert ist 1.
MAXWERT Dies gibt den maximalen Wert an, der von der Sequenz generiert werden kann. kann zwischen -4611686018427387903 und 4611686018427387902 liegen.
KEIN MAXWERT Wenn NO MAXVALUE angegeben ist, betrรคgt der Maximalwert fรผr eine aufsteigende Sequenz 4611686018427387903 und der Minimalwert fรผr eine absteigende Sequenz -1.
MINWERT / KEIN MINWERT Es gibt den Mindestwert an, den eine Sequenz generieren kann. kann zwischen -4611686018427387904 und 4611686018427387902 liegen. Wenn NO MINVALUE verwendet wird, ist der Mindestwert fรผr eine aufsteigende Sequenz 1
CYCLE Die CYCLE-Direktive gibt an, dass die Sequenznummer neu gestartet wird, nachdem sie ihren Maximal- oder Minimalwert erreicht hat.
KEIN ZYKLUS Die Standarddirektive option.NO CYCLE gibt an, dass die Sequenznummer nicht neu gestartet wird, nachdem sie ihren Maximal- oder Minimalwert erreicht hat.
ZWISCHENSPEICHER / Die CachegrรถรŸe gibt an, welcher Bereich von Sequenznummern in einem Knoten zwischengespeichert wird. muss eine vorzeichenlose Ganzzahl sein.
KEIN CACHE Standardoption. Die NO CACHE-Anweisung gibt an, dass die Sequenznummer nicht in einem Knoten zwischengespeichert wird.
ZURรœCKSETZEN DURCH Es gibt an, dass die Datenbank beim Neustart der Datenbank automatisch Folgendes ausfรผhrt und der Sequenzwert wird mit dem zurรผckgegebenen Wert neu gestartet.

Beispiel -

Wir erstellen eine Sequenz mit dem Namen DHK_SCHEMA.EMP_NO, die jedes Mal, wenn die Sequenz verwendet wird, einen um +1 erhรถhten Wert der Sequenz erstellt.

Sequenzskript โ€“

CREATE SEQUENCE DHK_SCHEMA.EMP_NO START WITH 100 INCREMENT BY 1.

Hier verwenden wir im folgenden Beispiel das Objekt โ€žsequenceโ€œ, um den Wert der Mitarbeiternummer bei jeder Ausfรผhrung der Auswahlabfrage um +1 zu erhรถhen. In der Abfrage kann โ€žnextvalโ€œ fรผr die Generierung von Seriennummern oder fรผr Anforderungen derselben Art verwendet werden.

Verwendung der Reihenfolge โ€“

SELECT DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;

AUSGABE โ€“ 100,101,102โ€ฆโ€ฆโ€ฆAlso bei jeder Ausfรผhrung der obigen Auswahlabfrage.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: