Latest web development tutorials

SQL AUTOINkREMENT Feld

Auto-Zuwachs in den neuen Datensatz, wenn eine eindeutige Nummer in die Tabelle zu generieren.


AUTOINkREMENT Feld

Wir wollen in der Regel einen neuen Rekord jedes Mal einlegen, wird automatisch der Wert des Primärschlüsselfeld erstellen.

Wir können ein Auto-Inkrement-Feld in der Tabelle erstellen.


Die Syntax für MySQL

Die folgende SQL-Anweisung "Personen" Tabelle in der Spalte "ID" zu als Autoinkrement Primärschlüsselfeld definiert:

CREATE TABLE Persons
(
ID int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (ID)
)

MySQL verwendet das Schlüsselwort AUTO_INCREMENT eine Autoinkrement auszuführen.

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

Lassen Sie die AUTO_INCREMENT-Sequenz mit einem anderen Wert zu starten, verwenden Sie die folgende SQL-Syntax:

ALTER TABLE Persons AUTO_INCREMENT=100

Um einen neuen Eintrag in der "Personen" Tabelle einfügen, haben wir nicht auf "ID" Spalte vorbestimmten Wert (fügt automatisch einen eindeutigen Wert):

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

Die SQL-Anweisung oben würde einen neuen Rekord in der "Personen" Tabelle einfügen. Spalte "ID" ist ein eindeutiger Wert gegeben. "Firstname" Spalte würde auf "Lars", "Name" Spalte "Monsen" gesetzt werden würde.


Die Syntax für SQL Server

Die folgende SQL-Anweisung "Personen" Tabelle in der Spalte "ID" zu als Autoinkrement Primärschlüsselfeld definiert:

CREATE TABLE Persons
(
ID int IDENTITY(1,1) PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

MS SQL Server mit dem Schlüsselwort identity eine Autoinkrement auszuführen.

In dem obigen Beispiel ist der Startwert IDENTITY 1 und wird um 1 für jeden neuen Datensatz erhöht.

Tipp: Um festzulegen , Spalte "ID" auf den Start 10 und 5 Schritten, bitte Identität IDENTITY (10,5).

Um einen neuen Eintrag in der "Personen" Tabelle einfügen, haben wir nicht auf "ID" Spalte vorbestimmten Wert (fügt automatisch einen eindeutigen Wert):

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

Die SQL-Anweisung oben würde einen neuen Rekord in der "Personen" Tabelle einfügen. Spalte "ID" ist ein eindeutiger Wert gegeben. "Firstname" Spalte würde auf "Lars", "Name" Spalte "Monsen" gesetzt werden würde.


Die Syntax für den Zugriff

Die folgende SQL-Anweisung "Personen" Tabelle in der Spalte "ID" zu als Autoinkrement Primärschlüsselfeld definiert:

CREATE TABLE Persons
(
ID Integer PRIMARY KEY AUTOINCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

MS Access Schlüsselwort AUTOINCREMENT eine Autoinkrement auszuführen.

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

Tipp: Um die Spalte "ID" auf den Start 10 und 5 Schritten angeben, autoincrement bitte auf AUTOINCREMENT (10,5).

Um einen neuen Eintrag in der "Personen" Tabelle einfügen, haben wir nicht auf "ID" Spalte vorbestimmten Wert (fügt automatisch einen eindeutigen Wert):

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

Die SQL-Anweisung oben würde einen neuen Rekord in der "Personen" Tabelle einfügen. Spalte "ID" ist ein eindeutiger Wert gegeben. "Firstname" Spalte würde auf "Lars", "Name" Spalte "Monsen" gesetzt werden würde.


Syntax für Oracle

In Oracle ist der Code ein wenig komplizierter.

Sie müssen Auto-Inkrement-Felder, die durch Sequenzobjekt (welches erzeugt eine Folge von Zahlen) erstellen.

Bitte verwenden Sie die folgende CREATE SEQUENCE-Syntax:

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

Der obige Code erzeugt eine Sequenz-Objekt namens seq_person, die durch 1 mit 1 und erhöht beginnen. Die Objekt-Cache 10 Werte Leistung zu verbessern. Cache-Option bietet einen schnelleren Zugriff auf die Anzahl der Sequenzwerte gespeichert werden.

Um einen neuen Eintrag in der "Personen" Tabelle einfügen, müssen wir die nextval Funktion verwenden (diese Funktion ruft den nächsten Wert von seq_person Reihenfolge):

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

Die SQL-Anweisung oben würde einen neuen Rekord in der "Personen" Tabelle einfügen. Spalte "ID" wird die nächste Nummer in der Reihenfolge von seq_person zugeordnet. "Firstname" Spalte würde auf "Lars", "Name" Spalte "Monsen" gesetzt werden würde.