HELP ME - SQL

giovedì 05 maggio 2011 - 10.21

agoss Profilo | Newbie


Ciao,
Ragazzi ho bisogno di una consulenza da qualcuno piu esperto di me in sql.
Praticamento ho un database MySQL con una tab Mail_subscribers in cui ci sono diversi campi, ho aggiunto 2 campi che mi servono poi per una migliore differenziazione dei contatti (tipo attività, regione)

Ora, io i dati che vanno a riempire i campi per singolo record li ho su un file xls associati alle email dei contatti stessi (una lista di mail regolarmente acquistata), la domanda è : Come faccio a popolare la tabella in quei soli campi facendo associare nella riga stessa email --> regione e tipo attività pescando dall'xls ???

(non posso cancellare tutti gli utenti e reinserirli con quei campi perchè alcuni di loro hanno parametri che rifiutano di ricevere mail)


praticamente un INSERT multiplo dei soli campi 'tipo' e 'regione' WHERE email dell'xls = campo 'email' nella tab 'Mail_subscribers' della stessa riga.... AIUTOOOOOO

Questo perchè inizialmente dal'xls grezzo non abbiamo aggiunto tutti i campi che ora sono necessari per differenziare bene i contatti...

babbubba Profilo | Senior Member

ma le righe nell'excel contengono le stesse righe della tabella? Ovvero tutte le email nel db sono contenute nell'excel?

Se si, io e ripeto io, creerei una tabella con 3 campi. Il primo la email (che imposterei come indice univoco per evitare errori nell'excel) secondo e terzo i due campi che ti servono.
Toglierei i due campi dalla tabella originale dei contatti... e quando vuoi questi dati in più invece che guardare solo la tabella utenti fai un join con questa nuova tabella contenete regione ecc...

Altrimenti credo tu debba fare un programmino che per ogni riga dell'excel fa una query sul db e trova la riga dell'utente con la mail corrispondente e fai un update dei due nuovi campi.


Babbubba

www.bsoftsolutions.it

Chiedere è curiosità ... rispondere è educazione.

micto27 Profilo | Senior Member

Se come immagino sulle righe del foglio excel hai a disposizione i valori identificativi delle righe sul database...
un sistema a buon mercato potrebbe essere questo:
ti posizioni sulla prima riga dell'excel su una colonna a destra dei dati,
imposti una formula con la quale costruisci lo statement che ti serve (es. ="update tabella set colonna = '" & A1 ...ecc..) concatenando testo fisso con i valori presi dalle celle
trascini la formula fino in fondo all'excel
copi il contenuto della colonna e te lo porti nell'ambiente da dove puoi eseguirlo

Non so se ho capito bene il problema (ho letto un po' in fretta il tuo post), ma per cose del genere ho usato spesso questa modalità.
Può servirti lo spunto?

Ciao, Michele
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5