Newsgroup: it.comp.appl.access
Titolo: File di testo contenente comandi SQL.

Una mia sventurata collega, invece di ricevere delle tabelle con campi
e record, si è vista recapitare un file di testo con cose del genere:
----inizio del pastrocchio----
CREATE TABLE `step1` (
  `id` int(11) NOT NULL,
  `ragionesociale` varchar(250) NOT NULL,
  `email` varchar(150) NOT NULL,
  `terminato` tinyint(1) unsigned NOT NULL,
  `quando` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `sedelegale` varchar(200) NOT NULL,
  `codicefiscale` varchar(30) NOT NULL,
  `piva` varchar(20) NOT NULL,
  `telefono` varchar(16) NOT NULL,
  `indirizzo` varchar(200) NOT NULL,
  `inps` varchar(10) NOT NULL,
  `cciaa` varchar(80) NOT NULL,
  `occupazionemf` double NOT NULL,
  `occupazionef` double NOT NULL,
  `attivitaeconomica` text NOT NULL,
  `contratto` varchar(200) NOT NULL,
  `altrocontratto1` varchar(200) NOT NULL,
  `altrocontratto2` varchar(200) NOT NULL,
  `note` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
'---- Dump dei dati per la tabella `step1`--
INSERT INTO `step1` VALUES(1, 'MONDI PACKAGING ITALIA SPA',
'
silvia...@mondigroup.com
', 1, '2010-04-29 14:09:00', 'Lombardia -
BG - Romano di Lombardia',
'0000000221490162', '00221490162', '0363916214', 'Via Balilla n. 32',
'1205208310', '468', 144, 12, '17.21.0 - Fabbricazione di carta e
cartone ondulato e di imballaggi di carta e cartone (esclusi quelli in
carta pressata)', 'Carta e Cartotecnica - (12)', '', '', '');
INSERT INTO... eccetera
----fine del pastrocchio----
Ora, a parte le differenze di sintassi, c'è modo di spiegare ad Access
di eseguire il codice?
Piccoli problemi: sono definite anche tabelle con più campi di quelli
che A2007 riesce a gestire, il separatore dei campi è una virgola e ci
sono virgole anche all'interno dei dati, il file in questione è grosso
19000 Kb.
A parte ribaltare chi gli ha fornito il malloppo, ho un'altra
soluzione?
Scusate la mole, e grazie a tutti.
Riccardo Baldinotti

 INSERT INTO... eccetera
[cut] 
hem...
la prossima volta non incollare dati veri o almeno camuffa i nomi dei 
clienti con i loro indirizzi email, nomi, cognomi e numeri di telefono...
:-/
-- 
Paolo opg
BE AWARE that this post uses a fake reply-to address
to contact me write to:
janickg ( at ) hotmail ( dot ) com
--

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Ciao Riccardo,
la prima soluzione che mi viene in mente č:
installi SQL Server Express e SqL Server Management Studio Express 
(sono free e li trovi entrambi sul sito Microsoft)
Esegui gli script da SQL Server Management Studio  una volta  ottenute 
le tabelle in SQL Server le esporti in Access con i tools di SSMS
Per quanto riguarda le tabelle con piů campi di quanti ne possa 
gestire Access, dovrai inventarti qualcosa tipo spezzare i dati su 2 
tabelle diverse,  per quanto riguarda il separatore dei dati, dovrebbe 
essere tutto gestito tramite gli script, infatti oltre al separatore 
di campo c'č l'apice come delimitatore di testo, per cui le virgole 
racchiuse tra apici non dovrebbero influenzare.
-- 
Cinzia [Office Access MVP]
_______________________
 
www.riolab.org
http://accessdaziacin.spaces.live.com
---------------------------------------- 

 ----fine del pastrocchio----
Non e' un pastrocchio. E' uno dei modi di trasferire dati, neanche fra i 
piu' incasinati. Ho visto di peggio. A occhio l'origine sembra MySql.
Sistemando la sintassi Access esegue correttamente sia la creazione 
tabelle che la insert dei dati.

Ho visto di peggio.
:D ... Grandioso.
*Adoro* i programmatori vecchio stampo.

 --
Sarà la stanchezza, avevo pensato di farlo.
Chiedo scusa...

 ----------------------------------------
Purtroppo siamo blindati, non posso avviare nemmeno un file .bat che
non sia installato dalla manutenzione.
Ma grazie lo stesso, girerò l'informazione alla collega, che ha forse
meno vincoli.

 tabelle che la insert dei dati.
Ho provato infatti a lavorare sulla sintassi, il che mi fa prevedere
un po' di lavoro da amanuense.
Grazie a tutti.