GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak exportovat tabulku PostgreSQL do CSV

Úvod

PostgreSQL (nebo Postgres ) je objektově-relační systém pro správu databází podobný MySQL, ale podporuje vylepšenou funkčnost a stabilitu. Jednou z vynikajících funkcí je, že můžete exportovat tabulku Postgres do .CSV soubor. To může být užitečné zejména při přenosu tabulky do jiného systému nebo při importu do jiné databázové aplikace.

V tomto tutoriálu se naučíte exportovat tabulku Postgres do souboru .CSV pomocí \copy a COPY příkazy.

Předpoklady

  • V systému nainstalovaný PostgreSQL
  • Existující databáze v PostgreSQL
  • Okno terminálu / příkazový řádek (Ctrl+Alt+T)

Než začnete s PostgreSQL

Postgres lze nainstalovat na Windows, Mac, Linux a lze jej dokonce nasadit v kontejneru Docker. Tato příručka vás provede postupem pomocí Ubuntu Linux. Nicméně všechny exportní příkazy lze použít v jakémkoli jiném podporovaném operačním systému.

Pokud Postgres nemáte, můžete si jej nainstalovat stažením softwaru z webu vývojáře. Nainstalujte Postgres na Ubuntu z výchozích úložišť zadáním následujícího:

sudo apt-get install postgresql

Jakmile se služba spustí, musíte vytvořit nebo importovat databázi.

Exportujte data z tabulky do .CSV pomocí příkazu COPY

V psql jsou dva různé příkazy.

Základní použití COPY příkaz je následující:

COPY db_name TO [/path/to/destination/db_name.csv] DELIMITER ‘,’ CSV HEADER;

Nahraďte db_name se skutečným názvem vaší databáze a /path/to/destination se skutečným umístěním, kam chcete soubor .CSV uložit.

Například ve Windows můžete chtít uložit kopii do C:\tmp\db_name.csv . V Linuxu může být výchozí cesta /tmp/db_name.csv . Poté můžete otevřít soubor .CSV a zobrazit obsah tabulky v mírně odlišném formátu. Rozdíl můžete vidět v příkladu níže.

Nejprve vypíšeme obsah zadané tabulky v skořápce psql pomocí příkazu:

SELECT * FROM [table_name]

Výstup zobrazuje hodnoty v naší vzorové tabulce jako na obrázku níže:

Nyní jej můžete porovnat s odpovídajícím souborem .CSV. Data exportovaná z výše uvedené tabulky se objeví v souboru .CSV, jak je vidět na následujícím obrázku:

Export konkrétních sloupců z tabulky do .CSV

Můžete použít COPY příkaz k cílení na konkrétní sloupce:

COPY [db_name](column1,column2,column3) TO [/path/to/destination/db_name_partial.csv] DELIMITER ‘,’ CSV HEADER;

Exportujte data z tabulky do .CSV pomocí příkazu \copy

Použijte \copy příkaz při práci na dálku. Umožňuje vám exportovat data ze serveru do souboru .CSV na místním klientském počítači. Použijte jej následovně:

\copy (SELECT * FROM [db_name]) to [/path/to/destination] CSV HEADER

Nahraďte db_name s názvem zdrojové databáze. Nahraďte /path/to/destination se skutečným umístěním souboru .CSV. V systému Windows můžete exportovat do C:tmpdb_name.csv . V Linuxu můžete exportovat do /tmp/db_name.csv .

Soubor \copy příkaz vyžaduje pouze zvýšená oprávnění pro klientský systém. To je užitečné, pokud nemáte dostatečná oprávnění ke spuštění COPY příkaz na serveru. Také \copy vám umožňuje použít relativní cestu.

Můžete například zadat desktop/db_name.csv v systému Windows a uloží se na plochu aktuálního uživatele.


Ubuntu
  1. Jak vytvořit tabulku v Hive

  2. Jak vytvořit tabulku v MySQL

  3. Jak vytvořit externí tabulku v Hive

  1. Jak nainstalovat PostgreSQL na Ubuntu 18.04

  2. Jak exportovat tabulku z MySQL do CSV

  3. Jak nainstalovat PostgreSQL na Ubuntu 20.04

  1. Jak nainstalovat PostgreSQL na Ubuntu 18.04

  2. Jak nainstalovat PostgreSQL 9.5 na Ubuntu (12.04 - 15.10)

  3. Jak nainstalovat pgAdmin4 na Ubuntu