Gli "Ospiti" della Sala Macchine |
Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Imposta lingua:en it | Login/Register
Per importare i dati su un DB si possono usare vari strumenti e formati. Uno dei piu' comodi e' il formato CSV (comma separated value), ovvero un semplice file ASCII in cui ogni riga e' un record; i campi all'interno del record sono separati da un carattere speciale, di solito la virgola. Questo tipo di file e' portatile, leggero e puo' essere anche aperto con espel; per rendere piu' facile la consultazione "umana" di solito sulla prima riga vengono messi i nomi dei campi.
I protagonisti:
RP: il povero programmatore/analista/tuttofare, consulente presso una
$grande_ditta.
CLx: dei CL che lavorano dalla parte del cliente: sono consulenti anche
loro ma non possono essere cazziati piu' di tanto ("si danno tanto
da fare, fino a tardi..." e' la giustificazione ufficiale).
La situazione:
RP e' al telefono con CL1 per farsi dare i dati da caricare su un DB: si tratta di 50 tabelle, alcune con piu' di 20 campi, quasi tutti numerici e pieni di decimali.
RP: Mi potresti mandare i dati di queste tabelle in formato CSV?
CL1: Ok, ma devi aspettare un paio di giorni, perche' ci metto un po' a
farli...
RP: (ma che li fa a mano?) Va bene, prima me li mandi meglio e'.
Subito dopo RP, memore di precedenti esperienze, richiede via email allo
stesso CL1 lo "spool delle tabelle in formato CSV". Per completezza, la
stessa email arriva per conoscenza a CL2, collega di CL1 e impegnato nel
medesimo progetto. I due lavorano nella stessa stanza.
Due giorni dopo RP riceve una email con un allegato NON compresso, della dimensione approssimativa di 700Kb, in formato $expel. Insospettito dal nome ("tabelle.xls") apre la mail e subito dopo telefona di nuovo a CL1.
RP: Ciao CL1. Spiegami come mai invece dei CSV mi hai mandato un UNICO
file $espel con TUTTE le tabelle all'interno, un foglio di lavoro
per ciascuna, e SENZA i nomi dei campi sopra!
CL1: Beh, ma non era quello che ti serviva?
RP: (bestemmiando mentalmente in turco)
Guarda che anche per email ti avevo chiesto dei file CSV...
CL1: Ok, aspetta, per domani te li invio.
RP: (Evvai, siamo in ritardo! Come se non avessi altro da fare)
Ok... pero' che sia domani in giornata, non di sera...
Il giorno dopo, verso l'ora di pranzo, arriva la email, questa volta con un bell'archivio con estensione ".ZIPPATO".
No, CL1 non e' COSI' idiota... e' il genio che gestisce il nostro server di posta ad aver inibito l'invio/ricezione di email che abbiano allegati con certe estensioni esoteriche come appunto ".ZIP". Lo stesso Einstein e' riuscito anche a NON configurare un messaggio di ritorno, cosi' se il cliente ci invia un'email con allegato "proibito" non viene avvertito in nessun modo...
Il motivo di queste genialate? Sicurezza... vabbe', sorvoliamo. Comunque, RP scarica la posta, controlla l'archivio si ri-precipita al telefono.
RP: Ciao CL1, sempre RP. Scusa, ma come mai sulla prima riga dei file
non ci sono i nomi dei campi? Ieri c'erano.
CL1: I nomi dei campi? Perche', ti servivano?
RP: Senti, ho 50 tabelle da caricare e alcune sono piene di numeri con
10 o piu' decimali, che vi sentite sempre in dovere di utilizzare
tutti fino all'ultimo. Se carico una colonna su un'altra, secondo
te come me ne accorgo?
Ascoltando la conversazione, interviene CL2 direttamente al telefono.
CL2: Ciao RP, sono CL2. Senti, va bene lo stesso se ti mandiamo i dati
come istruzioni INSERT? Per noi sarebbe piu' semplice...
RP: (come sarebbe, "piu' semplice"? Ci sono tool che fanno tutte e due
le cose con pochi click del mouse... vabbe', meglio non indagare)
fai come ti pare, basta che me li invii in un formato utilizzabile
e che me li invii prima possibile.
CL2: Ok, per stasera te li mando.
Il nostro eroe aspetta fino a sera, intorno alle 19:30... finalmente la posta da segni di vita. Il solito file, stavolta con estensione ".ZP", tanto per gradire. Dopo averlo scompattato impreca in tutte le lingue a lui conosciute e riacchiappa il telefono.
RP: CL2!!!
CL2: Ciao RP. Scusa per come ti ho inviato i dati, ma era cosi' urgente
e ho fatto un po' di fretta...
RP: (respira... calma... ispira...)
Gia' che ci sei mi spieghi COME hai fatto a cambiare formato dei
file 5 volte?
CL2: beh, adesso i dati sono a posto, no?
RP: (respira... calma... ispira... ecco fatti qualche bel ls -l, cosi'
ti calmi e ti spieghi meglio...)
a parte il fatto che comunque per come lavora l'applicativo dovro'
modificare lo stesso A MANO quello che mi hai inviato, spiegami se
puoi: nell'archivio ci sono 13 file con estensione ".XLS", 9 file
con estensione ".DAT", 5 file con estensione ".SQL", 8 file hanno
estensione ".TXT" e 15 file hanno estensione ".DOC"! Ma non avevi
niente di meglio da fare che cliccare su tutto quello che avevi a
tiro sul desktop? Hai incollato delle INSERT persino sui documenti
$parola!
CL2: beh, prima ho pensato di inviarti dei file di testo, poi per fare
prima...
RP: ...hai aperto $parola, che e' notoriamente MOLTO piu' leggero di
un editor di testo come $blocco_appunti, e ci hai incollato quelle
istruzioni INSERT... e lo stesso vale per $expel...
CL2: ...pero' adesso hai i dati che volevi, no? E le INSERT hanno anche
i nomi delle colonne, cosi' non ti puoi sbagliare...
...be', non ha tutti i torti... adesso i dati, in un modo o nell'altro ce li hai...
A volte mi chiedo se sono io a non capire come va il mondo...
RP
21/10/2004 00:00
le storie degli ospiti sono in ordine sparso, quindi 'precedente' e 'successiva' possono portare su storie di altri autori
I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli (io o l'autore della storia) e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.
In aggiunta: se il vostro commento non viene pubblicato non scrivetemi al riguardo, evidentemente non era degno di pubblicazione.
Terapia d'urto Di Chris postato il 19/04/2009 12:04
-- Chris
Il presente sito e' frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione (o all'autore dell'articolo se non sono io), cosi' il giorno che faccio delle aggiunte potro' avvisarvi e magari mandarvi il testo aggiornato.
Questo sito era composto con VIM, ora e' composto con VIM ed il famosissimo CMS FdT.
Questo sito non e' ottimizzato per la visione con nessun browser particolare, ne' richiede l'uso di font particolari o risoluzioni speciali. Siete liberi di vederlo come vi pare e piace, o come disse qualcuno: "Finalmente uno dei POCHI siti che ancora funzionano con IE5 dentro Windows 3.1".