Ciao a tutti, gestico un sito di un'associazione con circa 1000 utenti iscritti.
Alcuni utenti hanno fornito delle e-mail personali in fase di registrazione che adesso non controllano più. Sono riuscito ad avere le mail alternative di molti di loro e vorrei cambiarle sostituendole direttamente nel file degli user del database (sono alcune centinaia di utenti).
Ho tentato di farlo direttamente dal database, esportando il file, cambiano gli indirizzi e importando nuovamente il file, ma mi da un errore.
Adesso vi chiedo, ma seguo la procedura corretta?? Oppure è necessario che segua una strada alternativa?
In che cosa sbaglio.
Grazie
Quale è l'errore ?
M.
--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal
appena termina una fase in corso del sito, cioè la settimana prossima, ti faccio sapere i dettagli. Non vorrei mettere fuori uso il sito o qualcosa per adesso.
Gianfranco
rieccomi qua.
Allora io esporto la mia tabella users in formato excel 97-2003 xls workbook, faccio i confronti con un altro file, sostiusco gli indirizzi e-mail che non corrispondono, salvo il file (per comodità utilizzo un altro nome) e poi seleziono "importa" sempre in formato excel 97-2003 xls workbook e mi esce questo messaggio di errore:
Messaggio di MySQL:
#1062 - Duplicate entry '' for key 'name'
sembrerebbe un problema di duplicazione delle chiavi alla riga 1062, ma il file di excel ha dati fino alla riga 975. Mi sembra, però, che l'errore che mi dava prima era differente.
Soluzioni alternative??
Gianfranco
nessun suggerimento???
Gianfranco
Ciao, a naso mi sa che l'import ti fa un "INSERT" (e non un UPDATE), ma non ti cancella i vecchi valori inseriti e quindi le chiavi primarie (che devono essere univoche) si ritrovano doppie. Il tuo errore è infatti "Duplicate entry"
M.
--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal
soluzioni??
mi sa che è meglio che lascio stare, non vorrei creare problemi al sito e agli accessi.
che dici?
Gianfranco
Ciao, non lasciare perdere, solo che stai sbagliando l'SQL. Tu non devi fare un insert, ma un UPDATE o meglio un REPLACE (che è sia INSERT che UPDATE).
M.
--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal
il problema è che non so come fare: nel pannello di controllo di mysql del mio provider (dreamhost) ho importa come comando e tra le opzioni non trovo le funzioni update o replace.
Purtroppo non conosco il comando da "riga di comando" .
Gianfranco
Edita il file SQL, e sostituisci (per la tabella degli utenti) INSERT con REPLACE. Leggi quale testo su replace, perché sto andando a memoria.
M.
--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal