Pliki CSV upraszczają proces przechowywania danych. Ponieważ format jest oparty na wierszach i kolumnach, CSV dobrze przekłada się na relacyjną bazę danych.

Importowanie pliku CSV do bazy danych i eksportowanie z bazy danych do pliku CSV jest łatwe. Istnieje kilka różnych technik, których możesz użyć w PostgreSQL.

Utwórz plik CSV

Oto kilka przykładowych danych CSV, których możesz użyć do utwórz własny plik CSV:

identyfikator, imię, nazwisko, e-mail
1,Riannon,Pulsyfer,Riannon.Pulsifer@przykład.com
2,Moyna,Pałocz,Moyna.Pałocz@przykład.com
3,Roslyn,Bearnard,Roslyn.Bearnard@przykład.com
4,Gloria,Aldric,Gloria.Aldric@przykład.com
5,Felice,Greenwald,Felice.Greenwald@przykład.com

Przed zaimportowaniem pliku CSV do baza danych PostgreSQL, musisz utworzyć tabelę zgodną z formatem pliku CSV. Użyj poniższego kodu, aby utworzyć tabelę Postgres.

STWÓRZSTÓŁ pracownicy(IDintNIEZERO,
imię znak (20),
nazwisko znak (20),
znak e-mail (50));

Importuj pliki CSV do PostgreSQL

Możesz importować pliki CSV do tabeli Postgres na serwerze lub na komputerze klienckim.

instagram viewer

Importuj pliki CSV po stronie serwera

Aby zaimportować plik CSV na serwer PostgreSQL, użyj polecenia COPY PostgreSQL i słowa kluczowego FROM. Pozwala to na skopiowanie danych z pliku CSV do tabeli Postgres, pod warunkiem zgodności struktury. Użyj poniższego kodu, aby skopiować przykładowy plik CSV do tabeli Pracownicy:

KOPIUJ pracowników (identyfikator, imię, nazwisko, e-mail)
Z '/tmp/sample.csv'
DELIMITER ','
NAGŁÓWEK CSV;

Ścieżka w powyższym przykładzie jest bezwzględna. Jeśli wolisz, możesz użyć ścieżki względem katalogu danych Postgres.

Możesz skopiować dane z nagłówkami lub bez, więc możesz pominąć ostatni wiersz kodu, jeśli ich nie potrzebujesz.

Importuj pliki CSV po stronie klienta

Na komputerze klienckim użyj psql \Kopiuj polecenie, aby zaimportować plik CSV. Uruchom następujący kod w wierszu polecenia psql, aby skopiować przykładowy plik CSV do tabeli pracowników.

\kopiuj pracowników Z '/tmp/sample.csv' DELIMITER ',' NAGŁÓWEK CSV;

Eksportuj pliki CSV z PostgreSQL

Podobnie jak w przypadku importowania, możesz również wyeksportować plik CSV po stronie serwera lub klienta.

Eksportuj pliki CSV po stronie serwera

Użyj polecenia COPY i słowa kluczowego TO, aby wyeksportować dane do pliku CSV. Musisz określić tabelę źródłową i ścieżkę do pliku docelowego. Tym razem ścieżka musi być bezwzględna:

KOPIUJ pracowników DO '/tmp/employees.csv' NAGŁÓWEK CSV;

Jeśli chcesz wyeksportować tylko niektóre wiersze z bazy danych, użyj polecenia SELECT w następujący sposób:

KOPIUJ (WYBIERZ * Z pracowników, gdzie imię='Moyna') DO '/tmp/employees-moyna.csv' NAGŁÓWEK CSV;

Eksportuj pliki CSV po stronie klienta

Aby wyeksportować dane po stronie klienta, użyj \Kopiuj polecenie i DO słowo kluczowe w wierszu polecenia psql:

\kopiuj pracowników DO 'ścieżka-do-pliku.csv' nagłówek CSV;

Korzystanie z adaptera bazy danych

Nie musisz używać terminala, aby zaimportować plik CSV. Możesz importować dane przez obiekt kursora, używając preferowanego języka programowania. Na przykład, jeśli pracujesz z Pythonem, możesz połączyć się z serwerem PostgreSQL i wykonać KOPIUJ Komenda.

W tym celu musisz połączyć Pythona z Postgresem za pomocą adaptera bazy danych, takiego jak psychopg2.

pip zainstaluj psycopg2

Połącz się z bazą danych za pomocą następującego kodu:

import psychopg2;

połączenie = psycopg.connect(
baza danych="baza_pracownika",
host="hostlokalny"
user="postgres",
hasło="hasło",
)

Następnie utwórz obiekt kursora i użyj go do wykonania polecenia KOPIUJ:

kursor = połączenie.kursor()

kursor.wykonaj(
„KOPIUJ pracowników (identyfikator, imię, nazwisko, e-mail)
Z '/tmp/przykład.csv'
DELIMITER ','
NAGŁÓWEK CSV;"
)

połączenie.zamknij()

Zarządzaj danymi PostgreSQL z wygodą CSV

To prosty proces importowania i eksportowania danych za pomocą plików PostgreSQL i CSV. Możesz użyć poleceń psql na kliencie lub serwerze albo użyć adaptera bazy danych programowo.

Jeśli jesteś bardziej osobą GUI, rozważ użycie narzędzia pgAdmin. Jest to aplikacja GUI o otwartym kodzie źródłowym, która może pomóc w jeszcze łatwiejszym importowaniu i eksportowaniu danych.