Heim  >  Artikel  >  Datenbank  >  Wie konvertiere ich vorhandene Primärschlüsselspalten in MySQL in die automatische Inkrementierung?

Wie konvertiere ich vorhandene Primärschlüsselspalten in MySQL in die automatische Inkrementierung?

DDD
DDDOriginal
2024-10-28 23:05:30213Durchsuche

How to Convert Existing Primary Key Columns to Auto-Increment in MySQL?

Konvertieren vorhandener Primärschlüsselspalten zur automatischen Inkrementierung in MySQL

In vielen Fällen müssen Datenbanken mit vorhandenen Primärschlüsselspalten, aber ohne automatische Inkrementierung erworben werden Merkmale. Während in der Vergangenheit manuelles Inkrementieren im Code verwendet wurde, ist es wünschenswert, auf automatische Inkrementierer umzusteigen, um die Datenbankverwaltung zu verbessern.

Automatisches Inkrementieren zu vorhandenen Spalten hinzufügen

Um eine vorhandene Primärschlüsselspalte in eine automatisch inkrementierende Spalte umzuwandeln, führen Sie die folgenden Schritte aus:

ALTER TABLE <table-name> MODIFY COLUMN <column-name> INT NOT NULL AUTO_INCREMENT;

Um beispielsweise die Primärschlüsselspalte „id“ in der „foo“-Tabelle zu ändern:

ALTER TABLE foo MODIFY COLUMN id INT NOT NULL AUTO_INCREMENT;

Um die Änderung zu überprüfen, verwenden Sie den Befehl SHOW CREATE TABLE:

SHOW CREATE TABLE foo;

Es sollte eine Zeile ähnlich der folgenden ausgegeben werden:

...`id` INT(11) NOT NULL AUTO_INCREMENT,
...

Testing Auto- Inkrementierungsfunktion

Um sicherzustellen, dass die automatische Inkrementierung wie erwartet funktioniert, fügen Sie einen neuen Datensatz ein, ohne einen Wert für die Spalte „id“ anzugeben:

INSERT INTO foo () VALUES ();

Auswählen der Daten aus In der Tabelle „foo“ sollte der neu automatisch inkrementierte Wert angezeigt werden.

Adressierungsfehler 150

Wenn beim Umbenennen der Tabelle Fehler 150 auftritt, ist dies wahrscheinlich auf einen Konflikt zurückzuführen mit Fremdschlüsseleinschränkungen. Um dieses Problem zu beheben, müssen Sie möglicherweise die Fremdschlüsselbeziehungen löschen und neu erstellen, nachdem Sie die Primärschlüsselspalte geändert haben.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich vorhandene Primärschlüsselspalten in MySQL in die automatische Inkrementierung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn