import

Importare un file CSV in una tabella MySQL

Spessissimo le grosse quantità di dati dei clienti, quando ancora non esiste un supporto come il database, sono memorizzate su fogli excel. Questi strumenti sono pratici da gestire per tenere traccia di dati, segnare movimenti e fare conti di ogni sorta.

Naturalmente, nella quasi totalità dei casi una applicazione web o uno script necessita di recuperare dati da db. Come fare per importare velocemente dei dati da un foglio excel ad una tabella sul database?

Ci viene in aiuto il formato CSV (Comma Separated Values), una particolare tipologia di file di testo in cui tutti i fogli excel possono essere salvati. Questo tipo di salvataggio riporta i dati delle colonne excel su un file testuale, raggruppando il contenuto di ogni singola cella (solitamente tramite le virgolette “) e separando ogni riga tramite un carattere speciale (generalmente la virgola).
Questo permette di creare una regola, un criterio con cui effettuare l’importazione dei dati all’interno di una tabella.

Per quanto riguarda i database MySQL, l’importazione avviene tramite una query di questo tipo:

load data local infile 'myFile.csv' into table User
fields terminated by ','
enclosed by '"'
lines terminated by '\n'
(first_name, last_name, birth_date)

Come si può vedere, alla query viene specificato il nome del file CSV (myFile.csv) che contiene i dati da importare, la tabella in cui riversarli (User), il separatore delle righe (la virgola), il separatore delle colonne (le virgolette “) e i campi sulla tabella corrispondenti alle colonne del foglio excel.

Fate attenzione a che ci sia corrispondenza nell’ordine dei dati presi dall’excel con le colonne della tabella: nel nostro esempio, la prima colonna verrà riversata su first_name, la seconda su last_name e così via.

In questo modo il motore del database utilizza il criterio suggerito per distribuire coerentemente i dati all’interno della tabella indicata. Questo procedimento permettere di risparmiare molto tempo nell’importazione di dati da fogli excel, soprattutto se in grande quantità.

Ricordo che esistono molti tool per database (e alcuni software per la gestione dei db) che permettono di fare queste operazioni in modo semi-automatico. Uno su tutti? Aqua Data Studio.

 Scroll to top