Pochopení typů sloupců je pro správce databází klíčové, protože pomáhá zajistit efektivitu dotazů a správné zpracování dat.
Tento tutoriál zkoumá různé metody pro načtení typů sloupců v PostgreSQL, včetně nástrojů, jako je PSQL.
Vzorová tabulka
Následující příklady dotazů ukazují, jak vytvořit jednoduchou tabulku se třemi sloupci různých datových typů:
CREATE TABLE vzorová_tabulka (
id SÉRIOVÝ PRIMÁRNÍ KLÍČ,
jméno VARCHAR(50),
věk INT
);
Jakmile definujeme tabulku, kterou používáme pro demonstrační účely, můžeme prozkoumat různé metody pro načtení typů sloupců v PostgreSQL.
Metoda 1: Použití INFORMATION_SCHEMA
Nejběžnější metodou získávání informací metadat o různých databázových objektech v PostgreSQL je použití katalogu INFORMATION_SCHEMA.
Chcete-li načíst typ sloupce pomocí tabulky information_schema, můžeme spustit následující dotaz:
SELECT název_tabulky, název_sloupce, datový_typFROM information_schema.columns
WHERE table_schema = 'veřejné';
Předchozí dotaz načte název tabulky, název sloupce a datový typ pro všechny sloupce ve veřejném schématu. Upravte podmínku table_schema, abyste načetli sloupce z konkrétního schématu.
Za předpokladu, že máme ve veřejném schématu pouze sample_table, měli bychom vidět výstup, jak je znázorněno v následujícím:
název_tabulky | název_sloupce | datový typ--------------+-------------+--------------------
ukázková_tabulka | id | celé číslo
ukázková_tabulka | věk | celé číslo
ukázková_tabulka | jméno | charakter proměnlivý
(3 řádky)
Jak vidíme, získáme název tabulky, název sloupce a jeho odpovídající datový typ.
Metoda 2: Použití příkazů PSQL
Pro získání informací o daném sloupci tabulky můžeme také použít příkaz „\d“ z utility PSQL.
Po připojení k cílové databázi použijte „\d“ následované názvem tabulky, jak je znázorněno v následujícím:
\d název_tabulkyPříklad:
\d tabulka_vzorku;Daný příkaz by měl vrátit výstup takto:
Výstup obsahuje názvy sloupců, datové typy a další informace o struktuře tabulky.
Metoda 3: Použití tabulky katalogu Pg_attribute
Můžeme se také dotazovat na tabulku katalogu pg_attribute, abychom získali datový typ sloupce tabulky. Syntaxe dotazu je následující:
SELECT attname AS název_sloupce, typ_formátu (atttypid, atttypmod) AS datový_typZ atributu pg
WHERE attrelid ='target_table'::regclass
AND attnum > 0
A NE přitisknutý;
Nahraďte parametr target_table názvem tabulky, ve které je umístěn cílový sloupec.
Příklad je následující:
SELECT attname AS název_sloupce, typ_formátu (atttypid, atttypmod) AS datový_typZ atributu pg
WHERE attrelid = 'sample_table'::regclass
AND attnum > 0
A NE přitisknutý;
To by mělo vrátit názvy sloupců a odpovídající datový typ takto:
Závěr
Prozkoumali jsme tři hlavní metody zobrazení datového typu sloupce tabulky pomocí nástrojů PostgreSQL. Načítání datového typu sloupce je zásadní pro vytváření efektivních a kompatibilních aplikačních dotazů.