Share |

giovedì 22 dicembre 2011

MySQL : import-export files CSV

In questo breve articolo mostrerò come poter importare ed esportare files CSV da e verso un database MySQL tramite comandi e sintassi SQL.

Premetto che è possibile svolgere questi task in differenti modi.
In questo post saranno proposti gli script SQL che io preferisco utilizzare.

Al fine di documentare meglio gli esempi, farò riferimento ad una semplice ed ipotetica tabella di nome TABLE_EX composta dalle colonne id(INT), nome(VARCHAR), cognome(VARCHAR).

Import di un file CSV

E' bene ricordarsi di rimuovere dal file CSV la prima riga se questa contiene le intestazioni di colonna.

Di seguito lo script che io utilizzo per importare i record da un file CSV:

LOAD DATA LOCAL INFILE 'c:\path\to\file.csv' INTO TABLE TABLE_EX
FIELDS TERMINATED by ';'
ENCLOSED BY '"'
LINES TERMINATED BY '\n\r';

Mi sembra tutto facilmente intuibile, ad eccezione dell'argomento dell'ultima linea dello script: come potresti aver notato, l'esempio fa riferimento ad un ambiente Windows.

In DOS e Windows, una nuova linea all'interno di un file di testo viene indicata dalla sequenza '\n\r', che dovrebbe simulare le vecchie stampanti che dopo aver aggiunto una nuova riga eseguivano anche il carriage-return.

In un ambiente Linux/UNIX dovrebbe essere sufficiente solo il carattere '\n'.

Export di una tabella MySQL in file CSV

Al termine dell'export il file CSV prodotto non conterrà la riga con le intestazioni di colonna.

SELECT * 

  INTO OUTFILE 'file.csv'
  FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '"'
  LINES TERMINATED BY '\n\r'

FROM  TABLE_EX       
WHERE cognome LIKE 'A%';

Come per l'import, mi pare tutto molto intuitivo e semplice: direi che non c'è bisogno di alcun commento.

Questi due semplici script SQL sono essenziali a mio avviso, spero possano tornare utili.

Alla prossima,
MA.

martedì 1 novembre 2011

HTML5 : Autofocus & Placeholder

HTML5 mette a disposizione degli sviluppatori moltissime utilità per favorire la creazione di applicazioni molto user friendly, e in questo articolo saranno illustrate due delle funzionalità che più apprezzo quando mi trovo davanti ad una maschera di login o ad un modulo (o form) HTML preparati con cura: autofocus e placeholder.

Autofocus

Quante volte capita di trovarsi in una pagina di un sito dove è presente un solo FORM da editare e bisogna anche cliccare sul campo di testo?

Che noia!

Perchè chi ha creato il FORM non ha dato il focus al primo campo di input?

Per risolvere questo fastidioso problema, HTML5 mette a disposizione dello sviluppatore l'attributo autofocus: basterà usarlo con il campo desiderato per posizionarvi il cursore al caricamento della pagina.

Di seguito un esempio:

<!-
<input type="text" autofocus>
-->

Placeholder

Anche in questo caso si tratta di un attributo da utilizzare con un campo di un FORM HTML.

L'attributo placeholder permette allo sviluppatore di specificare un messaggio segnaposto sul campo di testo, che verrà mostrato all'utente dopo il caricamento della pagina richiesta.

E' molto utile soprattutto in FORM dove sono richiesti molti dati in input, come per esempio questionari da compilare.

Di seguito un esempio:

<!--
<input type="text" name="cf" 
    placeholder="digita il tuo codice fiscale in minuscolo" size="20">
-->


Molto spesso piccoli dettagli fanno la differenza.

Alla prossima,
MA.