So führen Sie die automatische PostgreSQL-Inkrementierung durch

So Fuhren Sie Die Automatische Postgresql Inkrementierung Durch



Eine Möglichkeit, die eindeutigen Identitäten in Ihrer PostgreSQL-Datenbank sicherzustellen, ist die Verwendung der Funktion zur automatischen Inkrementierung. Wenn diese Funktion aktiviert ist, generiert sie für jeden neuen Eintrag in Ihrer Tabelle eine eindeutige Identität. Wenn Sie bei der automatischen Inkrementierung versuchen, einen neuen Wert mit derselben eindeutigen Kennung einzufügen, wird ein Fehler ausgegeben. Die automatische Inkrementierung kann in verschiedenen Fällen verwendet werden, und Sie können definieren, wie die eindeutige Kennung generiert werden soll. Weitere Einzelheiten zur automatischen Inkrementierung von PostgreSQL finden Sie in diesem Beitrag. Weiter lesen!

Zwei Methoden für die automatische Inkrementierung von PostgreSQL

Beim Erstellen einer Datenbank sollten Sie für jede Tabelle einen Primärschlüssel haben, um sicherzustellen, dass keine Duplikate in den Tabellen erscheinen. Eine Möglichkeit zum Erstellen der Primärschlüssel ist die Verwendung der Funktion zur automatischen Inkrementierung für den Datentyp INT. PostgreSQL generiert den Primärschlüsselwert für alle Einträge und befreit den Entwickler von der mühsamen manuellen Eingabe des Primärschlüssels.

Es gibt zwei Ansätze, mit denen Sie eine automatische Inkrementierung in Ihrer PostgreSQL-Datenbank erstellen können.







Methode 1: Verwendung des Pseudotyps SERIAL

Die Standardmethode zum Erstellen einer automatischen Inkrementierung für Primärschlüssel in Ihrer Datenbank ist die Verwendung des Schlüsselworts SERIEL. Bei Verwendung erstellt der Pseudotyp SERIAL eine Sequenz zum Generieren der Werte. Es merkt sich den nächsten Wert in der Sequenz und jedes Mal, wenn Sie einen neuen Wert einfügen, wird ihm eine eindeutige Identität zugewiesen.



Beachten Sie, dass diese automatische Inkrementierung einem INT-Datentyp zugewiesen ist und gelöscht wird, sobald die Tabelle oder Spalte gelöscht wird.



Hier ist die Syntax zum Erstellen einer automatischen Inkrementierung:





ERSTELLEN TISCH TABELLENNAME ( ID SERIAL data_type ) ;

Für unseren Fall erstellen wir eine Tabelle mit dem Namen „details“, die die „user_id“ als unsere automatische Inkrementierung und unseren Primärschlüssel enthält. Wir fügen auch zwei weitere Spalten hinzu.



Wenn wir die Werte in unsere Tabelle einfügen möchten, fügen wir sie nur für die anderen Spalten ein und lassen die Spalte mit der automatischen Inkrementierung weg, da ihre Werte automatisch generiert werden. Hier ist ein Beispiel, in dem wir fünf Einträge zu unserer Tabelle hinzufügen:

Wenn wir die SELECT-Anweisung zum Überprüfen der Tabellendatensätze verwenden, beachten Sie, dass die Spalte „user_id“ eindeutige Identitäten enthält, bei denen es sich in unserem Fall um Zahlen handelt, die bei 1 beginnen. So führen Sie die automatische Inkrementierung von PostgreSQL mithilfe des Pseudotyps SERIAL durch.

Methode 2: Erstellen einer Sequenz

Wenn Sie den Pseudotyp SERIAL zum Erstellen der automatisch inkrementierenden Werte verwenden, haben Sie keine Kontrolle darüber, wie Ihre eindeutigen Identitäten erstellt werden. Im vorherigen Beispiel haben wir gesehen, dass unsere eindeutigen Identitäten bei 1 beginnen. Wenn Sie diese Werte jedoch steuern möchten, sagen wir, Sie möchten definieren, ab welchem ​​Punkt mit der Generierung begonnen werden soll, müssen Sie eine benutzerdefinierte Sequenz erstellen.

PostgreSQL verfügt über die SEQUENCE-Option, mit der Sie den Spaltennamen angeben können, der für die automatische Inkrementierung verwendet werden soll, und den Startwert für die Spalte definieren können. Wenn wir die Werte beispielsweise bei 100 beginnen möchten, erstellen wir die folgende benutzerdefinierte Sequenz:

CREATE SEQUENCE Spaltenname Startwert;

Nachdem Sie die Sequenz erstellt haben, können Sie nun Ihre Tabelle erstellen. Beachten Sie, dass Sie denselben Spaltennamen verwenden müssen, für den Sie eine Sequenz erstellt haben, z. B. „nextval(‚holder‘)“ für die erstellte Tabelle. Auf diese Weise referenziert PostgreSQL die Sequenz, um zu wissen, welche Reihenfolge beim Generieren der eindeutigen Identität für die Spalten eingehalten werden muss.

Wir führen den folgenden Befehl aus, um unsere Tabelle zu erstellen:

Fügen Sie die Werte für die entsprechenden Spalten in die erstellte Tabelle ein.

Wenn wir die „select“-Abfrage ausführen, um die Tabelleneinträge aufzulisten, können wir sehen, dass es uns gelungen ist, unsere automatische Inkrementierung zu steuern. Die Spalte „user_id“ beginnt ihren Wert bei 100 und generiert die Folgewerte für die anderen Einträge, die wir in die Tabelle einfügen.

Das ist die andere Möglichkeit, die automatische Inkrementierung für PostgreSQL zu erstellen.

Abschluss

Das Erstellen einer automatischen Inkrementierung ist hilfreich, um Ihrer Tabelle Einzigartigkeit zu verleihen. Wenn Sie einen Primärschlüssel für Ihre Tabelle definieren möchten, verwenden Sie die Funktion zur automatischen Inkrementierung für den Datentyp INT. PostgreSQL generiert die Werte automatisch und stellt so sicher, dass in Ihrer Tabelle keine Duplikate vorhanden sind. Wir haben definiert, wie die automatische Inkrementierung für PostgreSQL erstellt wird, und zwei Beispiele für die beiden Methoden bereitgestellt, die Sie verwenden können. Beide Methoden sind je nach Szenario anwendbar. Probiere sie aus!