SQL -Tutorial

SQL-HOME SQL-Einführung SQL-Syntax SQL-Auswahl SQL Wählen Sie Eindeutig aus SQL-Wo SQL Und, Oder, Nicht SQL-Reihenfolge nach SQL einfügen in SQL-Nullwerte SQL-Update SQL-Löschen SQL-Auswahl oben SQL-Min und -Max SQL-Anzahl, Durchschnitt, Summe SQL-ähnlich SQL-Platzhalter SQL-Eingang SQL zwischen SQL-Aliase SQL-Joins SQL Inner Join SQL-Left-Join SQL-Rechtsverknüpfung Vollständiger SQL-Join SQL-Self-Join SQL-Union SQL-Gruppierung nach SQL-Haben SQL existiert SQL Beliebig, Alle SQL-Auswahl in SQL-Insert in Select SQL-Fall SQL-Null-Funktionen Gespeicherte SQL-Prozeduren SQL-Kommentare SQL-Operatoren

SQL- Datenbank

SQL DB erstellen SQL-Drop-DB SQL-Sicherungsdatenbank SQL-Tabelle erstellen SQL-Drop-Tabelle SQL Alter-Tabelle SQL-Einschränkungen SQL nicht Null SQL-eindeutig SQL-Primärschlüssel SQL-Fremdschlüssel SQL-Check SQL-Standard SQL-Index Automatisches SQL-Inkrement SQL-Daten SQL-Ansichten SQL-Injektion SQL-Hosting SQL-Datentypen

SQL- Referenzen

SQL-Schlüsselwörter MySQL-Funktionen SQL Server-Funktionen MS Access-Funktionen SQL-Schnellref

SQL- Beispiele

SQL-Beispiele SQL-Quiz SQL-Übungen SQL-Zertifikat

SQL AUTO INCREMENT -Feld


AUTO INCREMENT-Feld

Auto-Increment ermöglicht die automatische Generierung einer eindeutigen Nummer, wenn ein neuer Datensatz in eine Tabelle eingefügt wird.

Oft ist dies das Primärschlüsselfeld, das automatisch erstellt werden soll, wenn ein neuer Datensatz eingefügt wird.


Syntax für MySQL

Die folgende SQL-Anweisung definiert die Spalte „Personid“ als Primärschlüsselfeld mit automatischer Inkrementierung in der Tabelle „Persons“:

CREATE TABLE Persons (
    Personid int NOT NULL AUTO_INCREMENT,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (Personid)
);

MySQL verwendet das AUTO_INCREMENTSchlüsselwort, um eine Auto-Increment-Funktion auszuführen.

Standardmäßig ist der Startwert für AUTO_INCREMENT1 und wird für jeden neuen Datensatz um 1 erhöht.

Um die AUTO_INCREMENTSequenz mit einem anderen Wert beginnen zu lassen, verwenden Sie die folgende SQL-Anweisung:

ALTER TABLE Persons AUTO_INCREMENT=100;

Um einen neuen Datensatz in die Tabelle „Personen“ einzufügen, müssen wir KEINEN Wert für die Spalte „Personid“ angeben (ein eindeutiger Wert wird automatisch hinzugefügt):

INSERT INTO Persons (FirstName,LastName)
VALUES ('Lars','Monsen');

Die obige SQL-Anweisung würde einen neuen Datensatz in die Tabelle "Personen" einfügen. Der Spalte „Personid“ würde ein eindeutiger Wert zugewiesen. Die Spalte „Vorname“ würde auf „Lars“ und die Spalte „Nachname“ auf „Monsen“ gesetzt.


Syntax für SQL Server

Die folgende SQL-Anweisung definiert die Spalte „Personid“ als Primärschlüsselfeld mit automatischer Inkrementierung in der Tabelle „Persons“:

CREATE TABLE Persons (
    Personid int IDENTITY(1,1) PRIMARY KEY,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

Der MS SQL Server verwendet das IDENTITYSchlüsselwort, um eine Autoinkrement-Funktion auszuführen.

Im obigen Beispiel ist der Startwert für IDENTITY1 und wird für jeden neuen Datensatz um 1 erhöht.

Tipp: Um anzugeben, dass die Spalte „Personid“ bei Wert 10 beginnen und um 5 erhöht werden soll, ändern Sie sie in IDENTITY(10,5).

Um einen neuen Datensatz in die Tabelle „Personen“ einzufügen, müssen wir KEINEN Wert für die Spalte „Personid“ angeben (ein eindeutiger Wert wird automatisch hinzugefügt):

INSERT INTO Persons (FirstName,LastName)
VALUES ('Lars','Monsen');

Die obige SQL-Anweisung würde einen neuen Datensatz in die Tabelle "Personen" einfügen. Der Spalte „Personid“ würde ein eindeutiger Wert zugewiesen. Die Spalte „Vorname“ würde auf „Lars“ und die Spalte „Nachname“ auf „Monsen“ gesetzt.



Syntax für Zugriff

Die folgende SQL-Anweisung definiert die Spalte „Personid“ als Primärschlüsselfeld mit automatischer Inkrementierung in der Tabelle „Persons“:

CREATE TABLE Persons (
    Personid AUTOINCREMENT PRIMARY KEY,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

Der MS Access verwendet das AUTOINCREMENTSchlüsselwort, um eine Autoinkrement-Funktion auszuführen.

Standardmäßig ist der Startwert für AUTOINCREMENT1 und wird für jeden neuen Datensatz um 1 erhöht.

Tipp: Um anzugeben, dass die Spalte „Personid“ bei Wert 10 beginnen und um 5 inkrementieren soll, ändern Sie das Autoincrement in AUTOINCREMENT(10,5).

Um einen neuen Datensatz in die Tabelle „Personen“ einzufügen, müssen wir KEINEN Wert für die Spalte „Personid“ angeben (ein eindeutiger Wert wird automatisch hinzugefügt):

INSERT INTO Persons (FirstName,LastName)
VALUES ('Lars','Monsen');

Die obige SQL-Anweisung würde einen neuen Datensatz in die Tabelle "Personen" einfügen. Der Spalte „Personid“ würde ein eindeutiger Wert zugewiesen. Die Spalte „Vorname“ würde auf „Lars“ und die Spalte „Nachname“ auf „Monsen“ gesetzt.


Syntax für Oracle

In Oracle ist der Code etwas kniffliger.

Sie müssen ein Auto-Increment-Feld mit dem Sequenzobjekt erstellen (dieses Objekt generiert eine Zahlenfolge).

Verwenden Sie die folgende CREATE SEQUENCESyntax:

CREATE SEQUENCE seq_person
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10;

Der obige Code erstellt ein Sequenzobjekt namens seq_person, das mit 1 beginnt und um 1 erhöht wird. Es speichert außerdem bis zu 10 Werte für die Leistung. Die Cache-Option gibt an, wie viele Sequenzwerte für einen schnelleren Zugriff im Speicher gespeichert werden.

Um einen neuen Datensatz in die Tabelle „Personen“ einzufügen, müssen wir die Funktion nextval verwenden (diese Funktion ruft den nächsten Wert aus der Sequenz seq_person ab):

INSERT INTO Persons (Personid,FirstName,LastName)
VALUES (seq_person.nextval,'Lars','Monsen');

Die obige SQL-Anweisung würde einen neuen Datensatz in die Tabelle "Personen" einfügen. Der Spalte "Personid" würde die nächste Nummer aus der Sequenz seq_person zugewiesen. Die Spalte „Vorname“ würde auf „Lars“ und die Spalte „Nachname“ auf „Monsen“ gesetzt.