Het begrijpen van de kolomtypen is cruciaal voor databasebeheerders, omdat het helpt om de query-efficiëntie en de juiste gegevensverwerking te waarborgen.
Deze tutorial onderzoekt de verschillende methoden om de kolomtypen in PostgreSQL op te halen, inclusief de tools zoals PSQL.
Voorbeeld tabel
De volgende voorbeeldquery's laten zien hoe u een eenvoudige tabel kunt maken met drie kolommen met verschillende gegevenstypen:
MAAK TABEL sample_table (
id SERIËLE PRIMAIRE SLEUTEL,
naam VARCHAR(50),
leeftijd INT
);
Zodra we de tabel hebben gedefinieerd die we gebruiken voor demonstratiedoeleinden, kunnen we de verschillende methoden verkennen om de kolomtypen in PostgreSQL op te halen.
Methode 1: het INFORMATION_SCHEMA gebruiken
De meest gebruikelijke methode om de metadata-informatie over verschillende database-objecten in PostgreSQL op te halen, is met behulp van de INFORMATION_SCHEMA-catalogus.
Om het kolomtype op te halen met behulp van de information_schema-tabel, kunnen we de volgende query uitvoeren:
SELECTEER tabelnaam, kolomnaam, gegevenstypeVAN information_schema.columns
WHERE table_schema = 'openbaar';
De vorige query haalt de tabelnaam, kolomnaam en gegevenstype op voor alle kolommen in het openbare schema. Pas de voorwaarde table_schema aan om de kolommen uit een specifiek schema op te halen.
Ervan uitgaande dat we alleen de sample_table in het openbare schema hebben, zouden we een output moeten zien zoals hieronder getoond:
tabelnaam | kolomnaam | data type--------------+-------------+-------------------
voorbeeld_tabel | id | geheel getal
voorbeeld_tabel | leeftijd | geheel getal
voorbeeld_tabel | naam | karakter wisselend
(3 rijen)
Zoals we kunnen zien, krijgen we de tabelnaam, kolomnaam en het bijbehorende gegevenstype.
Methode 2: de PSQL-opdrachten gebruiken
We kunnen ook de opdracht '\d' van het PSQL-hulpprogramma gebruiken om de informatie over een bepaalde tabelkolom op te halen.
Eenmaal verbonden met de doeldatabase, gebruikt u de '\d' gevolgd door de tabelnaam zoals hieronder weergegeven:
\d tabel_naamVoorbeeld:
\d voorbeeld_tabel;De gegeven opdracht zou de uitvoer als volgt moeten retourneren:
De uitvoer bevat de kolomnamen, gegevenstypen en andere informatie over de tabelstructuur.
Methode 3: de catalogustabel Pg_attribute gebruiken
We kunnen ook de catalogustabel pg_attribute opvragen om het gegevenstype van een tabelkolom op te halen. De syntaxis van de query is als volgt:
SELECT attname AS column_name, format_type(atttypid, atttypmod) AS data_typeVAN pg_kenmerk
WHERE attrelid ='target_table'::regclass
EN attnum > 0
EN NIET op de hoogte;
Vervang de parameter target_table door de tabelnaam waarop uw doelkolom zich bevindt.
Een voorbeeld is als volgt:
SELECT attname AS column_name, format_type(atttypid, atttypmod) AS data_typeVAN pg_kenmerk
WHERE attrelid = 'sample_table'::regclass
EN attnum > 0
EN NIET op de hoogte;
Dit zou de kolomnamen en het bijbehorende gegevenstype als volgt moeten retourneren:
Conclusie
We hebben de drie belangrijkste methoden onderzocht om het gegevenstype van een tabelkolom te bekijken met behulp van de PostgreSQL-tools. Het ophalen van het gegevenstype van de kolom is essentieel voor het bouwen van efficiënte en compatibele toepassingsquery's.