+ Rispondi alla Discussione
Risultati da 1 a 4 di 4

Come faccio per aggiornare i dati?

Ultimo Messaggio di PietroR il:
  1. #1
    User
    Data Registrazione
    Jan 2016
    Località
    torino
    Messaggi
    16

    Come faccio per aggiornare i dati?

    Ciao!

    Sto cercando di fare una cosa di questo tipo:

    ho una tabella con 4 campi: field1, field2. field3, field4

    Periodicamente aggiungo tramite sql nuovi dati, se il nuovo valore di field1 è diverso da tutti i precedenti va inserito normalmente.

    Se esiste già quel valore nel database, i dati di tutta la riga vanno sovrascritti. L'ideale sarebbe anche creare dei campi aggiuntivi per mostrare la differenza tra i field2. field3, field4 nuovi e vecchi. Il calcolo delle differenze dovrebbe avvenire in automatico con l'inserimento dei nuovi dati.

    Una soluzione del genere è fattibile? oppure è troppo complessa?


    Spero si capisca il seno di quello che ho chiesto, non sono molto esperto di database.

  2. #2
    Moderatore L'avatar di PietroR
    Data Registrazione
    Feb 2013
    Località
    Brescia
    Messaggi
    495
    Aggiungi PietroR su Linkedin
    Ciao kongfu1. La soluzione è fattibile, puoi costruire una pagina php apposita che faccia quello

  3. #3
    User
    Data Registrazione
    Jan 2016
    Località
    torino
    Messaggi
    16
    Citazione Originariamente Scritto da PietroR Visualizza Messaggio
    Ciao kongfu1. La soluzione è fattibile, puoi costruire una pagina php apposita che faccia quello
    Ciao PietoR,

    sospettavo fosse fattibile, ora sto cercando di realizzarlo! Ho "scoperto" che basta aggiungere ignore ad INSERT e poi usare il comando UPDATE. Così prima inserisco i nuovi dati ignorando gli ID esistenti, e poi aggiorno i dati vecchi se sono cambiati.

    Tutto sommato funziona, ma devo ancora capire come creare automaticamente un campo che mostra le differenze tra i dati vecchi e nuovi.

  4. #4
    Moderatore L'avatar di PietroR
    Data Registrazione
    Feb 2013
    Località
    Brescia
    Messaggi
    495
    Aggiungi PietroR su Linkedin
    esatto, con la insert ignore e poi con l'update puoi fare questa cosa: inserire i nuovi record e aggiornare, se necessario, quelli vecchi.

    Per la differenza potresti salvare i vecchi dati in un nuovo campo prima di far partire l'aggiornamento/insert e poi fare la differenza fra il campo nuovo e quello vecchio

+ Rispondi alla Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice [VIDEO] è Attivato
  • Il codice HTML è Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.