Newsgroup: it.comp.software.database
Titolo: Importare campi delimitati da sequenze di escape

Dovrei importare un file di testo con i campi delimitati da sequenze
di escape tipo:
 AABC
 DThe lexicon of love. Remastered (1982) 
 FShow me.  FPoison arrow.  FMany happy returns.  FTears are not
enough.  FValentine's day.  FThe look of love (Part 1).  FDate stamp.
 FAll of my heart.  F4 ever 2 gether.  FThe look of love (Part 4).
 FTheme from Mantrap.
 AAlabina
 DThe album (1998) 
 FAlabina (Orig. vers. '96).  FSalma y salama (Olè y ola).  FBaila
Maria (New vers.).  FLolai (Ya habibi ya eyni) (New vers.).  FYa mama,
ya mama.  FTierra Santa.  FEshebo (Chebba).  FRona.  FLo que tu dices
(Harramt ahebbak).  FYo te vi (Ah ya zein).  FYo te quiero, tu me
quieres.  FEspero.  FLinda (Linda Linda).  FAlabina (Spanish vers.).
 FMegamix (Radio edit): Alabina F, Lolai (Ya habibi ya eyni) F, Baila
Maria.
 5UPD Discopiù 
dove il carattere successivo all'escape indica l'autore (A) il titolo
dell'album (D) etc.
Sapete se esiste un qualche cosa di già pronto oppure devo farmi per
forza un programmino ? L'import finale dovrei farlo in Mysql però
posso passare anche per access.
Ciao e grazie a chi mi darà una mano.
*****
Fabio Serra
Per rispondere in e-mail cancella "the." e sostituisci "whitehouse" con "faser".
*****

 ha scritto nel messaggio
news:397dab50...@News.CIS.DFN.DE...

Sembra che la canonica importazione di un file di testo anche con separatore
non consideri l'escape come (appunto) separatore. Non tutto è perduto, con
una manciata di istruzioni del buon vecchio Basic (Open, Input etc..) per
leggere il file (controllando il codice escape) + un ciclo per scrivere in
un recordset e dovresti cavartela alla grande...
Ciao.

 Ciao.
Oppure aprire il file con un editor un po' piu' tosto, tipo VI per windows, e
sostituire l'escape con un carattere piu' umano e procedere all'import.
Ciao Gennaro

 Ciao e grazie a chi mi darà una mano.
Sotto linux, usa awk: basta uno scriptino di 4-5 righe e trasformi
il tutto in un formato caricabile direttamente da mysqlimport.
-- 
Francesco P. Lovergine  f.lovergine AT 
iesi.ba.cnr.it

Il problema non è importare i dati (con Word o altri editor puoi sostituire
gli Escape con altri separatori) ma il fatto che andrebbero importati non in
una ma in due, o preferibilmente tre tabelle (autori, album e titoli).
L'importazione testo di Access prende il file e lo importa in una sola
tabella, mentre se scrivi un programma VBA, visto che i dati sono in
sequenza (autore, album e titoli), potresti importarli direttamente nelle
tre tabelle assegnando dei numeri progressivi ai campi chiave, che poi
collegherai con delle relazioni.


Il carattere di escape è un problema relativo. Il fatto è che non
posso importare tutto il file in un unica tabella perchè non so quanti
campi saranno coinvolti. Ogni disco ha un n numero di canzoni e queste
dovranno andare in una tabella apposita. Le canzoni devono essere
collegati ai cantante in realazione molti a molti.
Quindi devo creare dinamicamente i vari id per i cantanti e le
canzoni, stando attento che il nome di un cantante non si ripeta.
Non so se mi sono spiegato bene, comunque mi sembra un tantino più
complesso che fare un piccolo script. Dato che sembra che questo tipo
di formato venga utilizzato per la stampa pensavo che ci fosse
qualcosa già in giro.
Altrimenti la mia idea era anche quella di creare una tabella
temporanea con i campi nome - cognome - titolo album - 30 o 40 campi
per le canzoni (mi sembra un numero ragionevole) - gli altri che
avanzano. Fatto questo mi faccio il mio script che per ogni sequenza
di escape mi riempie i campi della tabella e poi mi faccio la
normalizzazione con Access. Che ne pensate ?
Ciao.
P.s: ma a voi è mai capitato dover importare file in questo formato ?
Lo standard canonico non sono i CSV?


 *****
A me è capitato qualche tempo fa quando mi trasferivano da Host a pc i
report creati con AS e mi chiedevano di "rielaborarli" graficamente con
Excel o con Access per un mailmerge.
Solo che non capitava una volta all'anno e quindi mi ero scritto un
programmino in qbasic che leggeva il file e lo "riorganizzava" in modo da
eliminare gran parte delle informazioni non significative.
Per te è e sarà l'unica volta o prevedi che ce ne siano altre, tante da
giustificare lo studio di uno script o altro?
Ciao.
P.S. Come standard io preferisco il formato che mi porta meno rogne...

giustificare lo studio di uno script o altro?
No, dovrebbe essere solo una volta però sto proprio pensando ad uno
script. Più che avere la soluzione da voi :-), che vi ringrazio per
l'aiuto, volevo essere sicuro di prendere la strada giusta. Infatti
chi mi ha passato i dati sosteneva che erano in un formato
normalissimo, cosa che richiede pochi minuti e che l'amico dell'amico
faceva con FileMaker :-0 . FileMaker non l'ho mai usato, ma dopo
mezzora che ci ho smanettato su non mi sembra proprio che abbia
funzioni d'importazione di questo genere.
Ciao.
Fabio Serra
***********
Per rispondere in e-mail cancella "the." e sostituisci 
"whitehouse" con "faser".
***********

collegherai con delle relazioni.
E' proprio quello che farò...sai a volte mi è capitato di perdere
giorni a scrivere dei programmini per poi scoprire che per 5$ o gratis
e con sorgenti c'era già qualcosa di pronto :-(
