Heim  >  Artikel  >  Datenbank  >  Was nützt die automatische Inkrementierung von MySQL?

Was nützt die automatische Inkrementierung von MySQL?

little bottle
little bottleOriginal
2019-05-08 15:05:506327Durchsuche

Beim Datenbanktabellendesign werden Sie mit der Wahl des „natürlichen Schlüssels“ und des „Ersatzschlüssels“ Schwierigkeiten haben. Natürliche Schlüssel sind komplizierter zu implementieren, wenn das „weiche Löschen“ von Daten auf lange Schlüsselwerte zurückzuführen ist ​oder Kombinationen mehrerer Spalten. Er eignet sich nicht als Tabellenprimärschlüssel. Die beiden gebräuchlicheren Ersatzschlüssel sind automatische Inkrementierung und global eindeutige Identifikationsspalten (GUID). Als nächstes werde ich mit Ihnen über den Auto-Inkrement-Schlüssel sprechen.

Was nützt die automatische Inkrementierung von MySQL?

MySQL verwendet das von der Datenbank bereitgestellte numerische Feld für die automatische Inkrementierung als Primärschlüssel für die automatische Inkrementierung.

Vorteile:

(1) Die Datenbank wird automatisch nummeriert, wächst schnell und wird in der richtigen Reihenfolge gespeichert, was für den Abruf sehr vorteilhaft ist

(2) Numerischer Typ, nimmt wenig Platz ein, ist einfach zu sortieren und bequem im Programm zu übertragen

(3) Wenn Sie Datensätze über Nicht-System hinzufügen, müssen Sie dies tun. Sie müssen dieses Feld nicht angeben und müssen sich keine Gedanken über die Duplizierung von Primärschlüsseln machen.

Nachdem wir über die Vorteile gesprochen haben, sprechen wir über seine Mängel. Tatsächlich sind seine Mängel auf seine Vorteile zurückzuführen.

Nachteile:

(1) Aufgrund des automatischen Wachstums ist es mühsam, Datensätze mit bestimmten IDs manuell einzufügen, insbesondere wenn das System in andere Systeme integriert ist. Wenn Daten importiert werden müssen, ist es schwierig sicherzustellen, dass die ID des ursprünglichen Systems nicht mit dem Primärschlüssel in Konflikt steht (vorausgesetzt, das alte System ist ebenfalls digital). Insbesondere wenn das neue System online geht, das alte und das neue System parallel existieren und die Datenbanken heterogen sind. Wenn eine bidirektionale Synchronisierung erforderlich ist, wird die automatische Inkrementierung des Primärschlüssels Ihr Albtraum sein ) Wenn sich im System während der Integration oder Umstellung der Primärschlüssel des alten und des neuen Systems im numerischen Typ unterscheidet, wird der Datentyp des Primärschlüssels geändert, was auch zur Änderung anderer Tabellen führt, die mit Fremdschlüsseln verknüpft sind ebenso schwerwiegende Folgen;

(3) Wenn das System auch numerisch ist, möchten Sie möglicherweise vor dem Import eine Zeichenkennung (z. B. „o“, alt) hinzufügen, um alte und neue Daten zu unterscheiden Der Primärschlüssel der alten Daten zeigt an, dass es sich um alte Daten handelt, und die automatisch wachsenden Zahlen sind eine weitere Herausforderung.

Das obige ist der detaillierte Inhalt vonWas nützt die automatische Inkrementierung von MySQL?. 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