Heim  >  Artikel  >  Datenbank  >  Wie stelle ich den Anfangswert und die automatische Inkrementierung in MySQL ein?

Wie stelle ich den Anfangswert und die automatische Inkrementierung in MySQL ein?

WBOY
WBOYnach vorne
2023-09-07 19:37:021406Durchsuche

Wie stelle ich den Anfangswert und die automatische Inkrementierung in MySQL ein?

Das AUTO_INCRMENT-Attribut wird verwendet, um eine eindeutige Kennung für eine neue Zeile zu generieren. Wenn eine Spalte als „NOT NULL“ deklariert ist, kann der Spalte NULL zugewiesen werden, um eine Zahlenfolge zu erzeugen.

Wenn ein Wert in eine AUTO_INCREMENT-Spalte eingefügt wird, wird die Spalte auf diesen Spaltenwert gesetzt und die Sequenz wird ebenfalls zurückgesetzt, sodass automatisch Werte innerhalb des sequentiellen Bereichs des größten Spaltenwerts generiert werden.

Es ist möglich, eine vorhandene „AUTO_INCRMENT“-Spalte zu aktualisieren, wodurch auch die „AUTO_INCRMENT“-Sequenz zurückgesetzt wird. Zuletzt automatisch generiertes „AUTO_INCRMENT; Der Wert kann mit der Funktion „LAST_INSERT_ID()“ in SQL oder mit der C-API-Funktion „mysql_insert_id()“ abgerufen werden.

Diese Funktionen sind verbindungsspezifisch, was bedeutet, dass ihre Rückgabewerte nicht von anderen Verbindungen beeinflusst werden, die Einfügevorgänge ausführen. Der kleinste ganzzahlige Datentyp, der für die Spalte „AUTO_INCRMENT“ verwendet werden kann und groß genug ist, um den größten vom Benutzer benötigten Sequenzwert aufzunehmen.

AUTO_INCREMENT-Regeln

Sie müssen die folgenden Regeln befolgen, wenn Sie das AUTO_INCRMENT-Attribut verwenden:

  • Jede Tabelle hat nur eine AUTO_INCRMENT-Spalte, deren Datentyp ist Normalerweise eine Ganzzahl.

  • AUTO_INCREMENT-Spalte muss indiziert werden. Das heißt, es kann sein PRIMARY KEY oder UNIQUE-Index.

  • AUTO_INCRMENT-Spalte muss die NOT NULL-Einschränkung haben.

  • Wenn die Eigenschaft AUTO_INCREMENT auf Spalte festgelegt ist, fügt MySQL automatisch hinzu NOT NULL-Einschränkungen für die Spalte selbst.

Wenn die ID-Spalte nicht zur Tabelle hinzugefügt wurde, können Sie die folgende Anweisung verwenden:

ALTER TABLE tableName ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id);

Wenn die ID-Spalte bereits vorhanden ist, können Sie den folgenden Befehl verwenden:

ALTER TABLE tableName AUTO_INCREMENT=specificValue;

Hier bezieht sich tableName auf die Tabelle Dabei muss der Name der Spalte „AUTO_INCRMENT“ festgelegt werden. „ SpecificValue“ bezieht sich auf die Ganzzahl, beginnend mit dem vom Benutzer angegebenen „AUTO_INCRMENT“-Wert.

Das obige ist der detaillierte Inhalt vonWie stelle ich den Anfangswert und die automatische Inkrementierung in MySQL ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen