Ciao Paolo,
ho dovuto affrontare anche io un problema simile e la mia soluzione è stata quella di armarmi di buona volontà e di iniziare a creare join su join per creare "tabelle" con i dati corretti. Ovviamente poi ho salvato tutto nel mio nuovo db bello pulito.
Non conosco il tuo livello di conoscenza di Sql, ma facendo qualcosa del tipo:
Tabella anagrafica nuova (T1)
idutente, nomeUtente
Tabella pasticciona vecchia (T2)
nomeUtente, campo2, campo3, campo4,...
Query:
SELECT T1.idUtente, T2.campo2, T2.campo3,...
FROM T1 LEFT OUTER JOIN T2 ON T1.nomeUtente = T2.nomeUtente
Il risultato lo inserisci nella tua nuova tabella.
Per verificare che i dati siano corretti potresti visualizzare anche il campo nomeUtente delle due
tabelle.
Vedi tu se usare una LEFT o una RIGHT OUTER JOIN a seconda di che informazioni vuoi privilegiare...se decidere di considerare più importanti quelli della T1 o della T2.
spero di aver colto in pieno il tuo problema e averti aiutato a risolverlo.
In caso contrario chiedi pure.
ciao
giangi_77