Postgres Esporta in CSV

Postgres Esporta In Csv



CSV, o Comma Separated Values, è un formato di file ampiamente utilizzato per archiviare i dati tabulari. Fornisce un modo semplice e leggero per rappresentare i dati in cui ogni riga nel file corrisponde a una riga e le virgole separano i valori all'interno di ciascuna riga.

Inoltre, i file CSV sono altamente compatibili con una gamma completa di linguaggi di programmazione che li rendono la scelta ideale per lo scambio di dati tra diversi sistemi.
In questo tutorial, esploreremo i vari metodi e tecniche che possiamo utilizzare per esportare i dati da PostgreSQL in un formato CSV.

Requisiti:

Questo tutorial utilizza il database di esempio Pagila fornito sulla pagina ufficiale di PostgreSQL. Tuttavia, i metodi funzionano su qualsiasi database PostgreSQL.







Supponiamo inoltre che tu abbia accesso all'utilità PSQL o pgAdmin 4 e versioni successive per interagire con il tuo cluster PostgreSQL.



Esportazione PostgreSQL in CSV: comando di copia

Il metodo più semplice per esportare una tabella di database nel formato CSV è utilizzare il comando 'copia' in PostgreSQL.



Inizia connettendoti al tuo database di destinazione utilizzando il tuo metodo preferito. In questo tutorial, utilizziamo lo strumento pgAdmin.





Una volta connesso al database, seleziona la tabella da cui desideri esportare i dati. Se utilizzi lo strumento PSQL, puoi utilizzare il comando '\dt' per mostrare tutte le tabelle nel database corrente.

\dt

Individua la tabella che desideri esportare e annota il suo nome.



Possiamo esportare i dati da una tabella PostgreSQL in un file CSV utilizzando il comando 'copia'. Questo comando ci consente di copiare i dati tra una tabella e un file in vari formati incluso CSV.

Per esportare la tabella in un file CSV, possiamo utilizzare la sintassi come mostrato di seguito:

COPY table_name TO 'file_path' WITH (FORMAT CSV, HEADER);

Sostituisci i parametri table_name e file_path con la tabella di destinazione e il percorso del file CSV.

Aggiungere l'opzione HEADER alla fine se si desidera includere le intestazioni di colonna nel file esportato. PostgreSQL esporta i dati senza i nomi delle colonne per impostazione predefinita se si omette questa opzione.

Considera il seguente esempio che utilizza il comando 'copia' per esportare i dati dalla tabella film nel database Pagila in un file CSV chiamato 'fim.csv' nella directory di lavoro corrente:

COPIA film IN './film.csv' CON (FORMATO CSV, HEADER);

NOTA : In alcuni casi, il comando 'copia' non riesce ad esportare i dati quando si utilizza un percorso relativo. Assicurati di utilizzare i percorsi assoluti per stare dalla parte della sicurezza.

Una volta eseguito il comando 'copia', dovresti vedere un messaggio che indica il numero delle righe copiate.

Esempio di output:

COPIA 1000

NOTA : Con l'utilità PSQL, utilizzare il comando '\copy' invece del comando 'copy'. Questo esegue l'azione sul lato client anziché sul lato server.

Esportazione PostgreSQL in CSV: PgAdmin 4

Possiamo esportare una tabella di database PostgreSQL in CSV utilizzando lo strumento pgAdmin se preferisci un'interfaccia grafica.

È possibile seguire i seguenti passaggi descritti per ottenere ciò:

Avvia PgAdmin e connettiti al tuo database PostgreSQL.

Passare alla tabella che si desidera esportare in Esplora oggetti.

Fare clic con il tasto destro sulla tabella e selezionare 'Importa/Esporta'.

Scegliere la scheda 'Esporta' nella finestra di dialogo 'Importa/Esporta' e specificare il percorso e il nome del file di output nel campo 'Nome file'.

Seleziona l'opzione di formato 'CSV'.

Facoltativamente, seleziona la casella 'Includi i nomi delle colonne nella prima riga' per includere le intestazioni.

Fare clic sul pulsante 'OK' o 'Esporta' per avviare il processo di esportazione.

Una volta completato, dovresti vedere l'avvio del processo e i messaggi di stato del completamento del processo nell'angolo in basso a destra.

Conclusione

Abbiamo esplorato come possiamo usare copy, \copy e l'utility pgAdmin per esportare una determinata tabella di database in un file CSV in PostgreSQL.