PostgreSQL

Så här ställer du in PostgreSQL Auto-increment Primary Key?

Så här ställer du in PostgreSQL Auto-increment Primary Key?
Det kan finnas tillfällen där du bygger och underhåller tabeller i PostgreSQL när du vill ha vissa värden för en kolumn som genereras på begäran. Detta gäller särskilt för "id" -kolumner som fungerar som tabellens primära nyckel. Lyckligtvis möjliggör SERIAL-pseudotypen att göra en automatisk inkrementering av heltalsserier bekvämt. En serie är en typ av databasobjekt i PostgreSQL som producerar en serie index eller heltal. En PostgreSQL-sekvens producerar en sträng med distinkta heltal, vilket gör den lämplig att användas som en primär nyckel när du skapar en ny tabell. Vi kommer att visa dig vilka auto-inkrement menyer i PostgreSQL och vi kommer att använda SERIAL pseudo-typen genom hela den här guiden.

Syntax:

Den allmänna syntaxen för att skapa den primära nyckeln för automatisk inkrement är följande:

>> SKAPA TABELL tabellnamn (id SERIAL);

Låt oss nu titta på CREATE TABLE-deklarationen mer detaljerat:

För att få begreppet automatisk inkrement, se till att PostgreSQL är monterad och konfigurerad på ditt system innan du fortsätter med illustrationerna i den här guiden. Öppna PostgreSQL-kommandoradsskalet från skrivbordet. Lägg till ditt servernamn som du vill arbeta med, annars lämnade det det som standard. Skriv databasnamnet som ligger på din server som du vill arbeta med. Om du inte vill ändra det lämnar du det som standard. Vi kommer att använda databasen "test", det är därför vi har lagt till den. Du kan också arbeta på standardporten 5432, men du kan också ändra den. I slutändan måste du ange användarnamnet för den databas du väljer. Lämna det till standard om du inte vill ändra det. Skriv ditt lösenord för det valda användarnamnet och tryck "Enter" från tangentbordet för att börja använda kommandoskalet.

Använda SERIAL nyckelord som datatyp:

När vi skapar en tabell lägger vi vanligtvis inte till nyckelordet SERIAL i det primära kolumnfältet. Det betyder att vi måste lägga till värdena i den primära nyckelkolumnen när vi använder INSERT-satsen. Men när vi använder nyckelordet SERIAL i vår fråga när vi skapar en tabell, borde vi inte behöva lägga till primära kolumnvärden när vi infogar värdena. Låt oss ta en titt på det.

Exempel 01:

Skapa en tabell "Test" med två kolumner "id" och "namn". Kolumnen "id" har definierats som den primära nyckelkolumnen eftersom dess datatyp är SERIAL. Å andra sidan definieras kolumnen "namn" som datatypen TEXT INTE NULL. Försök med kommandot nedan för att skapa en tabell så skapas tabellen effektivt enligt bilden nedan.

>> CREATE TABLE Test (id SERIAL PRIMARY KEY, name TEXT NOT NULL);

Låt oss infoga några värden i kolumnen "namn" i den nyskapade tabellen "TEST". Vi lägger inte till något värde i kolumnen "id". Du kan se att värdena har infogats framgångsrikt med INSERT-kommandot enligt vad som anges nedan.

>> INSERT INTO Test (name) VALUES ('Aqsa'), ('Rimsha'), ('Khan');

Det är dags att kontrollera posterna i tabellen 'Test'. Prova nedanstående SELECT-instruktion i kommandoskalet.

>> VÄLJ * FRÅN test;

Från utdata nedan kan du märka att kolumnen "id" automatiskt har några värden i sig även om vi inte har lagt till några värden från INSERT-kommandot på grund av den datatyp SERIAL vi har angett för kolumnen "id". Så här fungerar datatypen SERIAL på egen hand.

Exempel 02:

Ett annat sätt att kontrollera kolumnens värde för SERIAL-datatyp är att använda nyckelordet RETURNING i INSERT-kommandot. Deklarationen nedan skapar en ny rad i "Test" -tabellen och ger värdet för "id" -fältet:

>> INSERT INTO Test (name) VALUES ('Hassam') RETURNING id;

Genom att kontrollera posterna i tabellen "Test" med SELECT-frågan fick vi nedanstående utdata som visas i bilden. Den femte posten har lagts till i tabellen effektivt.

>> VÄLJ * FRÅN test;

Exempel 03:

Den alternativa versionen av infogningsfrågan ovan använder nyckelordet STANDARD. Vi kommer att använda kolumn "id" -namn i INSERT-kommandot och i avsnittet VÄRDEN kommer vi att ge det nyckelordet STANDARD som sitt värde. Frågan nedan fungerar på samma sätt vid körning.

>> INSERT INTO Test (id, name) VÄRDEN (STANDARD, 'Raza');

Låt oss kontrollera tabellen igen med SELECT-frågan enligt följande:

>> VÄLJ * FRÅN test;

Du kan se från utdata nedan, det nya värdet har lagts till medan kolumnen "id" har ökats som standard.

Exempel 04:

Sekvensnumret för kolumnfältet SERIAL finns i en tabell i PostgreSQL. Metoden pg_get_serial_sequence () används för att uppnå detta. Vi måste använda funktionen currval () tillsammans med metoden pg_get_serial_sequence (). I denna fråga kommer vi att tillhandahålla tabellnamnet och dess SERIAL-kolumnnamn i parametrarna för funktionen pg_get_serial_sequence (). Som du kan se har vi angett tabellen "Test" och kolumn "id". Den här metoden används i nedanstående frågeexempel:

>> VÄLJ kurvval (pg_get_serial_sequence ('Test', 'id'));

Det är värt att notera att vår currval () -funktion hjälper oss att extrahera sekvensens senaste värde, vilket är "5". Bilden nedan är en illustration av hur föreställningen kan se ut.

Slutsats:

I denna handledning har vi visat hur man använder SERIAL-pseudo-typen för att automatiskt öka i PostgreSQL. Med hjälp av en serie i PostgreSQL är det enkelt att bygga en automatisk ökande uppsättning siffror. Förhoppningsvis kommer du att kunna använda SERIAL-fältet på tabellbeskrivningarna med våra illustrationer som referens.

Mus WinMouse låter dig anpassa och förbättra muspekarens rörelse på Windows PC
WinMouse låter dig anpassa och förbättra muspekarens rörelse på Windows PC
Om du vill förbättra standardfunktionerna för din muspekare, använd freeware WinMouse. Det lägger till fler funktioner som hjälper dig att få ut det m...
Mus Mus vänsterklicka på knappen fungerar inte på Windows 10
Mus vänsterklicka på knappen fungerar inte på Windows 10
Om du använder en dedikerad mus med din bärbara dator eller stationära dator men musens vänsterklick-knapp fungerar inte på Windows 10/8/7 av någon an...
Mus Markören hoppar eller rör sig slumpmässigt när du skriver in Windows 10
Markören hoppar eller rör sig slumpmässigt när du skriver in Windows 10
Om du upptäcker att muspekaren hoppar eller rör sig på egen hand, automatiskt, slumpmässigt när du skriver in Windows-bärbar dator eller dator, kan nå...