Postgres gauti stulpelio tipą

Postgres Gauti Stulpelio Tipa



Stulpelio tipas nurodo duomenų formatą arba tipą, kuris yra priskirtas konkrečiam stulpeliui duomenų bazės lentelėje. Stulpelių tipai nustato duomenų tipą, kurį galime saugoti tam tikrame stulpelyje, pvz., sveikieji skaičiai, tekstas, datos arba Būlio reikšmės.

Duomenų bazių administratoriams labai svarbu suprasti stulpelių tipus, nes tai padeda užtikrinti užklausos efektyvumą ir tinkamą duomenų tvarkymą.

Šiame vadove nagrinėjami įvairūs PostgreSQL stulpelių tipų gavimo būdai, įskaitant tokius įrankius kaip PSQL.







Lentelės pavyzdys

Šios užklausų pavyzdžiai parodo, kaip sukurti paprastą lentelę su trimis įvairių duomenų tipų stulpeliais:



CREATE TABLE sample_table (
ID SERIAL PRIMARY KEY,
vardas VARCHAR(50),
amžiaus INT
);

Kai apibrėžiame lentelę, kurią naudojame demonstravimo tikslais, galime ištirti įvairius metodus, kaip gauti stulpelių tipus „PostgreSQL“.



1 būdas: INFORMATION_SCHEMA naudojimas

Labiausiai paplitęs būdas gauti metaduomenų informaciją apie įvairius PostgreSQL duomenų bazės objektus yra INFORMATION_SCHEMA katalogo naudojimas.





Norėdami gauti stulpelio tipą naudodami lentelę information_schema, galime vykdyti šią užklausą:

PASIRINKITE lentelės_pavadinimą, stulpelio_pavadinimą, duomenų_tipą
FROM information_schema.columns
WHERE table_schema = 'vieša';

Ankstesnė užklausa nuskaito visų viešosios schemos stulpelių lentelės pavadinimą, stulpelio pavadinimą ir duomenų tipą. Koreguokite sąlygą table_schema, kad gautumėte stulpelius iš konkrečios schemos.



Darant prielaidą, kad viešojoje schemoje turime tik sample_table, turėtume matyti išvestį, kaip parodyta toliau:

lentelės_pavadinimas | stulpelio_pavadinimas | duomenų tipas
--------------+-------------+--------------------
pavyzdys_lentelė | id          | sveikasis skaičius
pavyzdys_lentelė | amžius         | sveikasis skaičius
pavyzdys_lentelė | vardas        | charakteris kintantis
(3 eilutės)

Kaip matome, gauname lentelės pavadinimą, stulpelio pavadinimą ir atitinkamą duomenų tipą.

2 būdas: PSQL komandų naudojimas

Taip pat galime naudoti komandą „\d“ iš PSQL programos, kad gautume informaciją apie tam tikrą lentelės stulpelį.

Prisijungę prie tikslinės duomenų bazės, naudokite „\d“ ir lentelės pavadinimą, kaip parodyta toliau:

\d lentelės_pavadinimas

Pavyzdys:

\d pavyzdys_lentelė;

Pateikta komanda turėtų grąžinti išvestį taip:

Išvestyje yra stulpelių pavadinimai, duomenų tipai ir kita lentelės struktūros informacija.

3 būdas: Pg_attribute katalogo lentelės naudojimas

Taip pat galime pateikti užklausą pg_attribute katalogo lentelėje, kad gautume lentelės stulpelio duomenų tipą. Užklausos sintaksė yra tokia:

SELECT attname AS stulpelio_pavadinimas, format_type(atttypid, atttypmod) AS duomenų_tipas
IŠ pg_attribute
WHERE attrlid ='target_table'::regclass
IR attnum > 0
IR NE attisdropped;

Pakeiskite parametrą target_table į lentelės pavadinimą, kuriame yra tikslinis stulpelis.

Pavyzdys yra toks:

SELECT attname AS stulpelio_pavadinimas, format_type(atttypid, atttypmod) AS duomenų_tipas
IŠ pg_attribute
WHERE attrlid = 'sample_table'::regclass
IR attnum > 0
IR NE attisdropped;

Tai turėtų grąžinti stulpelių pavadinimus ir atitinkamą duomenų tipą, kaip nurodyta:

Išvada

Mes ištyrėme tris pagrindinius metodus, kaip peržiūrėti lentelės stulpelio duomenų tipą naudodami PostgreSQL įrankius. Norint sukurti efektyvias ir suderinamas taikomųjų programų užklausas, labai svarbu gauti stulpelio duomenų tipą.