CSV-Dateien vereinfachen das Speichern von Daten. Da das Format zeilen- und spaltenbasiert ist, lässt sich CSV gut in eine relationale Datenbank übersetzen.

Es ist einfach, eine CSV-Datei in eine Datenbank zu importieren und aus einer Datenbank in eine CSV-Datei zu exportieren. Es gibt ein paar verschiedene Techniken, die Sie dafür mit PostgreSQL verwenden können.

Erstellen Sie eine CSV-Datei

Hier sind einige Beispiel-CSV-Daten, die Sie verwenden können Erstellen Sie Ihre eigene CSV-Datei:

ID, Vorname, Nachname, E-Mail
1,Riannon,Pulsifer,Riannon.Pulsifer@Beispiel.com
2,Moyna,Palocz,Moyna.Palocz@Beispiel.com
3,Roslyn,Bärnard,Roslyn.Bärnard@Beispiel.com
4,Gloria,Aldrik,Gloria.Aldric@Beispiel.com
5,Felice,Grünwald,Felice.Grünwald@Beispiel.com

Vor dem Importieren der CSV-Datei in die PostgreSQL-Datenbank, müssen Sie eine Tabelle erstellen, die dem CSV-Dateiformat entspricht. Verwenden Sie den folgenden Code, um eine Postgres-Tabelle zu erstellen.

SCHAFFENTISCH Angestellte(Ich würdeintNICHTNULL,
Vorname Char (20),
Nachname Zeichen (20),
E-Mail-Zeichen (50));

Importieren Sie CSV-Dateien in PostgreSQL

Sie können CSV-Dateien in eine Postgres-Tabelle auf dem Server oder auf einem Clientcomputer importieren.

Importieren Sie CSV-Dateien auf der Serverseite

Um eine CSV-Datei auf einen PostgreSQL-Server zu importieren, verwenden Sie den PostgreSQL-Befehl COPY und das FROM-Schlüsselwort. Damit können Sie Daten aus einer CSV-Datei in eine Postgres-Tabelle kopieren, sofern die Struktur passt. Verwenden Sie den folgenden Code, um die CSV-Beispieldatei in die Tabelle „Employees“ zu kopieren:

COPY Mitarbeiter (ID, Vorname, Nachname, E-Mail)
AUS '/tmp/sample.csv'
TRENNZEICHEN ','
CSV-KOPF;

Der Pfad im obigen Beispiel ist absolut. Sie können einen Pfad relativ zu Ihrem Postgres-Datenverzeichnis verwenden, wenn Sie dies bevorzugen.

Sie können die Daten mit oder ohne Header kopieren, also können Sie die letzte Codezeile weglassen, wenn Sie sie nicht benötigen.

Importieren Sie CSV-Dateien auf der Client-Seite

Verwenden Sie auf einem Clientcomputer die Datei psql \Kopieren Befehl zum Importieren der CSV-Datei. Führen Sie den folgenden Code an der psql-Eingabeaufforderung aus, um die Beispiel-CSV-Datei in die Employees-Tabelle zu kopieren.

\copy Mitarbeiter VON '/tmp/sample.csv' TRENNZEICHEN ',' CSV-KOPF;

Exportieren Sie CSV-Dateien aus PostgreSQL

Wie beim Importieren können Sie auch eine CSV-Datei serverseitig oder clientseitig exportieren.

Exportieren Sie CSV-Dateien auf der Serverseite

Verwenden Sie den Befehl COPY und das Schlüsselwort TO, um die Daten in eine CSV-Datei zu exportieren. Sie müssen die Quelltabelle und den Pfad zur Zieldatei angeben. Diesmal muss der Pfad absolut sein:

Mitarbeiter KOPIEREN NACH '/tmp/employees.csv' CSV-KOPF;

Wenn Sie nur einige der Zeilen aus der Datenbank exportieren müssen, verwenden Sie den SELECT-Befehl wie folgt:

KOPIEREN (AUSWÄHLEN * VON Mitarbeitern, wobei Vorname='Moyna') ZU '/tmp/employees-moyna.csv' CSV-KOPF;

Exportieren Sie CSV-Dateien auf der Client-Seite

Um Daten auf der Client-Seite zu exportieren, verwenden Sie die \Kopieren Befehl und die ZU Schlüsselwort in der psql-Eingabeaufforderung:

\Mitarbeiter NACH kopieren 'Pfad-zur-Datei.csv' CSV-Kopfzeile;

Verwenden eines Datenbankadapters

Sie müssen das Terminal nicht verwenden, um eine CSV-Datei zu importieren. Sie können die Daten über ein Cursorobjekt mit Ihrer bevorzugten Programmiersprache importieren. Wenn Sie beispielsweise mit Python arbeiten, können Sie sich mit dem PostgreSQL-Server verbinden und die ausführen KOPIEREN Befehl.

Dazu müssen Sie Python über einen Datenbankadapter wie z. B. mit Postgres verbinden psychopg2.

pip installiere psycopg2

Stellen Sie mit dem folgenden Code eine Verbindung zur Datenbank her:

importieren psychopg2;

Verbindung = psycopg.connect (
database="employee_db",
host="localhost"
user="postgres",
Passwort="Passwort",
)

Erstellen Sie dann ein Cursorobjekt und verwenden Sie es, um den COPY-Befehl auszuführen:

Cursor = Verbindung. Cursor ()

Cursor.execute(
"COPY Mitarbeiter (ID, Vorname, Nachname, E-Mail)
VON '/tmp/sample.csv'
DELIMITER ','
CSV-KOPF;"
)

connection.close()

Verwalten Sie Ihre PostgreSQL-Daten bequem mit CSV

Es ist ein einfacher Prozess, Daten mit PostgreSQL- und CSV-Dateien zu importieren und zu exportieren. Sie können die psql-Befehle auf dem Client oder Server verwenden oder programmgesteuert einen Datenbankadapter verwenden.

Wenn Sie eher eine GUI-Person sind, sollten Sie das pgAdmin-Tool verwenden. Es ist eine Open-Source-GUI-Anwendung, mit der Sie Daten noch einfacher importieren und exportieren können.