Soubory CSV zjednodušují proces ukládání dat. Protože je formát založen na řádcích a sloupcích, CSV se dobře převádí do relační databáze.

Je snadné importovat soubor CSV do databáze a exportovat z databáze do souboru CSV. Existuje několik různých technik, které k tomu můžete použít s PostgreSQL.

Vytvořte soubor CSV

Zde jsou ukázková data CSV, která můžete použít vytvořte si vlastní soubor CSV:

id, jméno, příjmení, email
1,Riannon,Pulsifer,Riannon.Pulsifer@příklad.com
2,Moyna,Palocz,Moyna.Palocz@příklad.com
3,Roslyn,Bearnarde,Roslyn.Bearnard@příklad.com
4,Gloria,Aldric,Gloria.Aldric@příklad.com
5,Felice,Greenwald,Felice.Greenwald@příklad.com

Před importem souboru CSV do databáze PostgreSQL, budete muset vytvořit tabulku, která odpovídá formátu souboru CSV. Pomocí následujícího kódu vytvořte tabulku Postgres.

VYTVOŘITSTŮL zaměstnanci (idintNENULA,
jméno char (20),
příjmení char (20),
e-mailový znak (50));

Importujte soubory CSV do PostgreSQL

Soubory CSV můžete importovat do tabulky Postgres na serveru nebo na klientském počítači.

Importujte soubory CSV na straně serveru

Chcete-li importovat soubor CSV na server PostgreSQL, použijte příkaz COPY PostgreSQL a klíčové slovo FROM. To vám umožňuje kopírovat data ze souboru CSV do tabulky Postgres za předpokladu, že struktura odpovídá. Pomocí následujícího kódu zkopírujte ukázkový soubor CSV do tabulky zaměstnanců:

KOPÍROVAT zaměstnance (ID, jméno, příjmení, email)
Z '/tmp/sample.csv'
ODDĚLOVAČ ','
HLAVIČKA CSV;

Cesta ve výše uvedeném příkladu je absolutní. Pokud chcete, můžete použít cestu relativní k datovému adresáři Postgres.

Data můžete zkopírovat s nebo bez záhlaví, takže můžete vynechat poslední řádek kódu, pokud je nepotřebujete.

Importujte soubory CSV na straně klienta

Na klientském počítači použijte soubor psql \kopírovat příkaz k importu souboru CSV. Spuštěním následujícího kódu na příkazovém řádku psql zkopírujte ukázkový soubor CSV do tabulky zaměstnanci.

\zkopírovat zaměstnance OD '/tmp/sample.csv' ODDĚLOVAČ ',' HLAVIČKA CSV;

Export CSV souborů z PostgreSQL

Stejně jako u importu můžete také exportovat soubor CSV na straně serveru nebo na straně klienta.

Exportujte soubory CSV na straně serveru

Pomocí příkazu COPY a klíčového slova TO exportujte data do souboru CSV. Musíte zadat zdrojovou tabulku a cestu k cílovému souboru. Tentokrát musí být cesta absolutní:

KOPÍROVAT zaměstnance DO '/tmp/employees.csv' HLAVIČKA CSV;

Pokud potřebujete exportovat pouze některé řádky z databáze, použijte příkaz SELECT následovně:

KOPÍROVAT (VYBRAT * Z zaměstnanců, kde jméno='Moyna') TO '/tmp/employees-moyna.csv' HLAVIČKA CSV;

Exportujte soubory CSV na straně klienta

Chcete-li exportovat data na straně klienta, použijte \kopírovat příkaz a NA klíčové slovo v příkazovém řádku psql:

\zkopírovat zaměstnance DO 'cesta-k-souboru.csv' hlavička CSV;

Použití databázového adaptéru

K importu souboru CSV nemusíte používat terminál. Data můžete importovat přes objekt kurzoru pomocí preferovaného programovacího jazyka. Pokud například pracujete s Pythonem, můžete se připojit k serveru PostgreSQL a spustit KOPÍROVAT příkaz.

K tomu potřebujete připojit Python k Postgresu pomocí databázového adaptéru, jako je např psycopg2.

pip install psycopg2

Připojte se k databázi pomocí následujícího kódu:

import psycopg2;

připojení = psycopg.connect(
database="employee_db",
host="localhost"
user="postgres",
password="heslo",
)

Poté vytvořte kurzorový objekt a použijte jej k provedení příkazu COPY:

kurzor = connection.cursor()

kurzor.execute(
"KOPÍROVAT zaměstnance (ID, jméno, příjmení, email)
Z '/tmp/sample.csv'
ODDĚLOVAČ ','
CSV HEADER;"
)

connection.close()

Spravujte svá data PostgreSQL s pohodlím CSV

Je to jednoduchý proces importu a exportu dat pomocí souborů PostgreSQL a CSV. Můžete použít příkazy psql na klientovi nebo serveru nebo použít databázový adaptér programově.

Pokud jste spíše GUI, zvažte použití nástroje pgAdmin. Jedná se o open-source GUI aplikaci, která vám může pomoci importovat a exportovat data ještě snadněji.