Postgres Få kolumntyp

Postgres Fa Kolumntyp



En kolumntyp avser dataformatet eller -typen som är tilldelad en specifik kolumn i en databastabell. Kolumntyper bestämmer vilken datatyp som vi kan lagra i en viss kolumn, såsom heltal, text, datum eller booleska värden.

Att förstå kolumntyperna är avgörande för databasadministratörer eftersom det hjälper till att säkerställa frågeeffektiviteten och korrekt datahantering.

Denna handledning utforskar de olika metoderna för att hämta kolumntyperna i PostgreSQL inklusive verktyg som PSQL.







Exempeltabell

Följande exempelfrågor visar hur man skapar en enkel tabell med tre kolumner med olika datatyper:



CREATE TABLE sample_table (
ID SERIELL PRIMÄRNYCKEL,
namn VARCHAR(50),
ålder INT
);

När vi väl har definierat tabellen som vi använder för demonstrationsändamål kan vi utforska de olika metoderna för att hämta kolumntyperna i PostgreSQL.



Metod 1: Använd INFORMATION_SCHEMA

Den vanligaste metoden för att hämta metadatainformation om olika databasobjekt i PostgreSQL är att använda INFORMATION_SCHEMA-katalogen.





För att hämta kolumntypen med informationsschematabellen kan vi köra följande fråga:

VÄLJ tabellnamn, kolumnnamn, datatyp
FRÅN information_schema.columns
WHERE table_schema = 'public';

Den föregående frågan hämtar tabellnamnet, kolumnnamnet och datatypen för alla kolumner i det offentliga schemat. Justera villkoret table_schema för att hämta kolumnerna från ett specifikt schema.



Om vi ​​antar att vi bara har sample_table i det offentliga schemat, bör vi se en utdata som visas i följande:

tabellnamn  | kolumnnamn | data typ
--------------+-------------+------------------------
sample_table | id          | heltal
sample_table | ålder         | heltal
sample_table | namn        | karaktär varierande
(3 rader)

Som vi kan se får vi tabellnamnet, kolumnnamnet och dess motsvarande datatyp.

Metod 2: Använda PSQL-kommandon

Vi kan också använda kommandot '\d' från PSQL-verktyget för att hämta information om en given tabellkolumn.

När du är ansluten till måldatabasen, använd '\d' följt av tabellnamnet som visas i följande:

\d tabellnamn

Exempel:

\d exempeltabell;

Det givna kommandot ska returnera utdata enligt följande:

Utdata inkluderar kolumnnamn, datatyper och annan tabellstrukturinformation.

Metod 3: Använda katalogtabellen Pg_attribute

Vi kan också fråga katalogtabellen pg_attribute för att hämta datatypen för en tabellkolumn. Frågesyntaxen är som följer:

VÄLJ attnamn AS kolumnnamn, format_typ(atttypid, atttypmod) AS datatyp
FROM pg_attribute
WHERE attrelid ='target_table'::regclass
OCH attnum > 0
OCH INTE attisdroppad;

Ersätt parametern target_table med tabellnamnet som din målkolumn finns på.

Ett exempel är följande:

VÄLJ attnamn AS kolumnnamn, format_typ(atttypid, atttypmod) AS datatyp
FROM pg_attribute
WHERE attrelid = 'sample_table'::regclass
OCH attnum > 0
OCH INTE attisdroppad;

Detta bör returnera kolumnnamnen och motsvarande datatyp enligt följande:

Slutsats

Vi utforskade de tre huvudsakliga metoderna för att se en tabellkolumns datatyp med hjälp av PostgreSQL-verktygen. Att hämta kolumndatatypen är viktigt för att skapa effektiva och kompatibla applikationsfrågor.