Articles

SsV-bestand importeren in PostgreSQL tabel

Posted on

Samenvatting: in deze tutorial laten we u verschillende manieren zien om een CSV-bestand te importeren in een PostgreSQL tabel.

Eerst maakt u een nieuwe tabel met de naam persons met de volgende kolommen:

  • id: de persoon id
  • first_name: voornaam
  • last_name: achternaam
  • dob geboortedatum
  • email: het e-mailadres
CREATE TABLE persons ( id SERIAL, first_name VARCHAR(50), last_name VARCHAR(50), dob DATE, email VARCHAR(255), PRIMARY KEY (id))
Code language: SQL (Structured Query Language) (sql)
posgresql import csv

Ten tweede, bereid een CSV-gegevensbestand voor met de volgende opmaak:

csv-gegevens
csv-bestand

Het pad van het CSV-bestand is als volgt: C:\sampledb\persons.csv

Downlo de personen.csv-bestand

Een CSV-bestand in een tabel importeren met behulp van COPY-instructie

Om dit CSV-bestand in de persons tabel te importeren, gebruikt u COPY-instructie als volgt:

COPY persons(first_name, last_name, dob, email)FROM 'C:\sampledb\persons.csv'DELIMITER ','CSV HEADER;
Code language: SQL (Structured Query Language) (sql)

PostgreSQL geeft de volgende melding terug:

COPY 2
Code language: Shell Session (shell)

Dit betekent dat er twee rijen zijn gekopieerd. Laten we de persons tabel eens controleren.

SELECT * FROM persons;
Code language: SQL (Structured Query Language) (sql)

Het werkt zoals verwacht.

Laten we eens wat dieper ingaan op het COPY-instructie.

Eerst specificeert u de tabel met kolomnamen na het COPY sleutelwoord. De volgorde van de kolommen moet dezelfde zijn als die in het CSV-bestand. Als het CSV-bestand alle kolommen van de tabel bevat, hoeft u ze niet expliciet op te geven, bijvoorbeeld:

COPY sample_table_nameFROM 'C:\sampledb\sample_data.csv' DELIMITER ',' CSV HEADER;
Code language: SQL (Structured Query Language) (sql)

Ten tweede zet u het CSV-bestandspad na het FROM sleutelwoord. Omdat de CSV-bestandsindeling wordt gebruikt, moet u zowel DELIMITER als CSV-clausules opgeven.

Ten derde geeft u het HEADER-sleutelwoord op om aan te geven dat het CSV-bestand een koptekst bevat. Wanneer het COPY commando gegevens importeert, negeert het de header van het bestand.

Merk op dat het bestand direct door de PostgreSQL server moet worden gelezen, niet door de client applicatie. Daarom moet het toegankelijk zijn voor de PostgreSQL server machine. Ook moet u superuser toegang hebben om het COPY statement succesvol te kunnen uitvoeren.

Porteer CSV bestand in een tabel met pgAdmin

In het geval dat u een CSV bestand van uw computer moet importeren in een tabel op de PostgreSQL database server, kunt u pgAdmin gebruiken.

Het volgende statement maakt de persons tabel onvolledig, zodat u de gegevens opnieuw kunt importeren.

TRUNCATE TABLE persons RESTART IDENTITY;
Code language: SQL (Structured Query Language) (sql)

Klik eerst met de rechtermuisknop op de persons tabel en selecteer het Import/Export… menu-item:

Tweede, (1) schakel over naar importeren, (2) blader naar het importbestand, (3) selecteer het formaat als CSV, (4) selecteer het scheidingsteken als komma (,):

Ter derde klikt u op het tabblad kolommen, verwijdert u het vinkje bij de kolom id en klikt u op de knop OK:

Wacht ten slotte tot het importproces is voltooid. Hieronder ziet u het dialoogvenster dat u informeert over de voortgang van de import:

In deze tutorial hebt u geleerd hoe u gegevens uit een CSV-bestand kunt importeren in een tabel op de PostgreSQL-databaseserver met behulp van het COPY statement en het pgAdmin-hulpprogramma.

  • Was deze handleiding nuttig?
  • Ja/Nee

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *