©SQL :: Manager
HomeProgramm-InformationenTechnische DetailsKostenloser DownloadKaffee für den Autor
Netzwelt
SQL-FunktionMariaDB

MariaDB SETVAL SQL-Funktion - Wert für Sequenz setzen

SETVALSyntax:SETVAL(Sequenz, Wert [, Reserviert] [, Zyklus])
Rückgabe-Wert:INTEGER
Funktions-Typ:Sequenz-Funktion
Funktions-Beschreibung

Setzt den nächsten "Wert" fest, der von einer "Sequenz" zurückgegeben werden soll und gibt diesen zurück.

Bei ungültigem "Wert" für die Sequenz gibt SETVAL() NULL zurück.


Wenn "Reserviert" true oder 1 ist, wird mit dem folgenden NEXTVAL() der nachste Wert nach dem gesetzten "Wert" zurüchgegeben. Das ist Voreinstellung.

Wenn "Reserviert" false oder 0 ist, wird mit dem folgenden NEXTVAL() der Wert zurüchgegeben, der mit "Wert" festgelegt wurde.


Wenn die Sequenz zyklisch einegstellt ist, kann mit SETVAL() der "Zyklus" erhöht werden. Ohne "Zyklus" muss der zusetztende "Wert" größer als der aktuelle Wert in der Sequenz sein.

Mit Zyklus muss entweder der zusetztende "Wert" größer als der aktuelle Wert in der Sequenz sein, oder der Zyklus muss erhöht werden.


Verfügbar ab MariaDB Version 10.3.

Beispiel 1: SETVAL() und NEXTVAL() ohne Angabe von "Reserviert".

 1
 2
 3
 4
 5

select setval(`my_sequence`,60) as result;
select nextval(`my_sequence`as result;


result
bigint(20)
60
result
bigint(20)
61

Beispiel 2: SETVAL() und NEXTVAL() mit Angabe von "Reserviert" = true.

 1
 2
 3
 4
 5

select setval(`my_sequence`,60,trueas result;
select nextval(`my_sequence`as result;


result
bigint(20)
60
result
bigint(20)
61

Beispiel 3: SETVAL() und NEXTVAL() mit Angabe von "Reserviert" = false.

 1
 2
 3
 4
 5

select setval(`my_sequence`,60,falseas result;
select nextval(`my_sequence`as result;


result
bigint(20)
60
result
bigint(20)
60

Beispiel 4: Rückgabe von NULL, wenn "Wert" kleiner als aktueller Wert in der Sequenz.

 1
 2
 3
 4

select setval(`my_sequence`,60,falseas result;


result
bigint(20)
NULL

Beispiel 5: SETVAL() und NEXTVAL() mit Erhöhung von "Zyklus".

 1
 2
 3
 4

select setval(`my_sequence`,1,false,2) as result;
select nextval(`my_sequence`as result;

result
bigint(20)
1
result
bigint(20)
1
Die Beispiele wurden mit dem MyWAY SQL-Manager erstellt: Download

Verwendung der SETVAL() Funktion in MariaDB-Datenbanken

In MariaDB wird die SETVAL()-Funktion verwendet, um den aktuellen Wert eines Sequenzobjekts manuell in einen neuen angegebenen Wert festzulegen. Dabei der Name des Sequenzobjekts zusammen mit dem gewünschten neuen Wert übergeben und die Funktion gibt den neu eingestellten Wert zurück, der dann zur Bestätigung oder weiteren Verarbeitung verwendet werden kann. Die Funktion findet Anwendung, wenn die Sequenz auf einen bestimmten Wert zurückgesetzt oder mit anderen Daten synchronisiert werden soll. Das Ändern des Werts einer Sequenz kann dabei die Eindeutigkeit der generierten Werte beeinträchtigen, deshalb sollte geprüft werden, ob der neue Wert auch den Anforderungen entspricht.
SEC_TO_TIMESECONDSESSION_USERSETVALSHASHA1SHA2

Weitere MySQL und MariaDB SQL Sequenz-Funktionen

NEXTVALNEXTVAL(Sequenz)
Mehr zur NEXTVAL-Funktion

LASTVALLASTVAL(Sequenz)
Mehr zur LASTVAL-Funktion

Numerische FunktionenZeichenketten-FunktionenReguläre AusdrückeDatum und Zeit-Funktionen
Vergleichs-FunktionenVerschlüsselung & KomprimierungKonvertierungs-FunktionenNULL-Funktionen
Aggregat-FunktionenWindow-FunktionenJSON-FunktionenGeometrische Funktionen
Sequenz-FunktionenInformations-FunktionenDynamische Tabellen-SpaltenSonstige Funktionen
Weitere Informationen zur SQL-Funktion SETVAL: mariadb.com
Aktualisiert: 24.09.2023ImpressumKontaktGeschäftsbedingungenDatenschutz & CookiesUpdatesSitemapFacebookLinkedinTwitterStatistics©2020-2024 Heino Cunze-Fischer