PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

PostgreSQL bigserial &nextval

Nur eine Notationsbequemlichkeit

Gemäß der Dokumentation zu seriellen Typen , smallserial , serial , und bigserial sind keine echten Datentypen. Vielmehr sind sie eine Notation, um gleichzeitig beide Sequenz und Spalte mit Standardwert zeigt auf diese Sequenz.

Ich habe eine Testtabelle für das Schema public erstellt . Der Befehl psql \d zeigt bigint Spaltentyp. Vielleicht liegt es am PgAdmin-Verhalten?

Aktualisieren

Ich habe den PgAdmin-Quellcode überprüft. In der Funktion pgColumn::GetDefinition() es scannt die Tabelle pg_depend für Auto-Abhängigkeit und wenn gefunden - ersetzt bigint mit bigserial um den ursprünglichen Tabellenerstellungscode zu simulieren.