CSV-tiedostot yksinkertaistavat tietojen tallennusprosessia. Koska muoto on rivi- ja sarakepohjainen, CSV muuntuu hyvin relaatiotietokannaksi.

CSV-tiedoston tuominen tietokantaan ja vienti tietokannasta CSV-tiedostoon on helppoa. On olemassa muutamia erilaisia ​​tekniikoita, joita voit käyttää PostgreSQL: n kanssa.

Luo CSV-tiedosto

Tässä on esimerkki CSV-tiedoista, joita voit käyttää luo oma CSV-tiedosto:

id, etunimi, sukunimi, sähköposti
1,Riannon,Pulsifer,Riannon.Pulsifer@esimerkki.com
2,Moyna,Palocz,Moyna.Palocz@esimerkki.com
3,Roslyn,Bearnard,Roslyn.Bearnard@esimerkki.com
4,Gloria,Aldric,Gloria.Aldric@esimerkki.com
5,Felice,Greenwald,Felice.Greenwald@esimerkki.com

Ennen kuin tuot CSV-tiedoston PostgreSQL-tietokanta, sinun on luotava taulukko, joka vastaa CSV-tiedostomuotoa. Luo Postgres-taulukko käyttämällä seuraavaa koodia.

LUODAPÖYTÄ työntekijät(idintEITYHJÄ,
etunimi char (20),
sukunimi char (20),
sähköpostimerkki (50));

Tuo CSV-tiedostot PostgreSQL: ään

Voit tuoda CSV-tiedostoja Postgres-taulukkoon palvelimella tai asiakaskoneella.

instagram viewer

Tuo CSV-tiedostoja palvelinpuolella

Tuo CSV-tiedosto PostgreSQL-palvelimeen käyttämällä PostgreSQL COPY -komentoa ja FROM-avainsanaa. Tämän avulla voit kopioida tietoja CSV-tiedostosta Postgres-taulukkoon, jos rakenne vastaa. Kopioi malli-CSV-tiedosto työntekijätaulukkoon käyttämällä seuraavaa koodia:

COPY työntekijät (tunnus, etunimi, sukunimi, sähköpostiosoite)
FROM '/tmp/sample.csv'
DELIMITER ','
CSV HEADER;

Yllä olevan esimerkin polku on ehdoton. Voit halutessasi käyttää polkua suhteessa Postgres-tietohakemistoosi.

Voit kopioida tiedot otsikoiden kanssa tai ilman, joten voit jättää viimeisen koodirivin pois, jos et tarvitse niitä.

Tuo CSV-tiedostoja asiakaspuolella

Käytä asiakaskoneessa psql: ää \kopio -komento tuodaksesi CSV-tiedoston. Suorita seuraava koodi psql-komentokehotteessa kopioidaksesi malli-CSV-tiedosto työntekijöiden taulukkoon.

\copy työntekijät FROM '/tmp/sample.csv' DELIMITER ',' CSV HEADER;

Vie CSV-tiedostoja PostgreSQL: stä

Kuten tuonnin yhteydessä, voit myös viedä CSV-tiedoston palvelin- tai asiakaspuolelle.

Vie CSV-tiedostoja palvelinpuolella

Käytä COPY-komentoa ja TO-avainsanaa viedäksesi tiedot CSV-tiedostoon. Sinun on määritettävä lähdetaulukko ja polku kohdetiedostoon. Tällä kertaa polun on oltava ehdoton:

KOPIOI työntekijät '/tmp/employees.csv' CSV HEADER;

Jos sinun täytyy viedä tietokannasta vain osa riveistä, käytä SELECT-komentoa seuraavasti:

COPY (SELECT * FROM työntekijät jossa etunimi='Moyna') TO '/tmp/employees-moyna.csv' CSV HEADER;

Vie CSV-tiedostoja asiakaspuolella

Vie dataa asiakaspuolelta käyttämällä \kopio komento ja TO avainsana psql-komentokehotteessa:

\copy työntekijät TO 'polku tiedostoon.csv' CSV-otsikko;

Tietokantasovittimen käyttäminen

Sinun ei tarvitse käyttää päätettä CSV-tiedoston tuomiseen. Voit tuoda tiedot kohdistinobjektin kautta käyttämällä haluamaasi ohjelmointikieltä. Jos esimerkiksi työskentelet Pythonin kanssa, voit muodostaa yhteyden PostgreSQL-palvelimeen ja suorittaa sen KOPIO komento.

Tätä varten sinun on yhdistettävä Python Postgresiin tietokantasovittimen, kuten esim psycopg2.

pip asennus psycopg2

Yhdistä tietokantaan seuraavalla koodilla:

tuonti psycopg2;

yhteys = psycopg.connect(
tietokanta="työntekijä_db",
host="localhost"
user="postgres",
salasana="salasana",
)

Luo sitten kohdistinobjekti ja käytä sitä COPY-komennon suorittamiseen:

kursori = yhteys.kursori()

cursor.execute(
"COPY työntekijät (tunnus, etunimi, sukunimi, sähköpostiosoite)
LÄHETTÄJÄ '/tmp/sample.csv'
DELIMITER ','
CSV HEADER;"
)

connect.close()

Hallitse PostgreSQL-tietojasi kätevästi CSV: n avulla

Tietojen tuonti ja vienti PostgreSQL- ja CSV-tiedostojen avulla on yksinkertainen prosessi. Voit käyttää psql-komentoja asiakkaalla tai palvelimella tai käyttää tietokantasovitinta ohjelmallisesti.

Jos olet enemmän graafinen käyttöliittymä, harkitse pgAdmin-työkalun käyttöä. Se on avoimen lähdekoodin GUI-sovellus, jonka avulla voit tuoda ja viedä tietoja entistä helpommin.