Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    Sincronizzare solo una parte del database

    Salve a tutti, ho un problema, non so se si può risolvere...

    Dunque:

    Dentro un database ho 2 tabelle completamente diverse, ma con in comune un'unica colonna.

    La tabella A è quella principale dove andrò ad apportare le modifiche, la tabella B fa una query in un campo della tabella A e se lo fa suo, però una volta che cambio il dato nella tabella A, la tabella B al posto che aggiornare il suo campo, me ne crea uno nuovo.

    TABELLA A
    codice-030405 | ciao | ciao | ciao |ciao

    TABELLA B
    codice-030405 | ciao | ciao | ciao |ciao

    Ora modifico...

    TABELLA A
    codice-03040502030405 | ciao | ciao | ciao |ciao

    Ora nella tabella B avrò

    TABELLA B
    codice-030405 | ciao | ciao | ciao |ciao
    codice-03040502030405 | ciao | ciao | ciao |ciao

    Io non voglio questo, vorrei che anche nella tabella B si apportassero le modifiche che affettua nella A.

    Come posso fare?Il problema non è sincronizzare due tabelle, ma solo una colonna delle 2 tabelle...

    Grazie infinite!

  2. #2
    che query usi? se usi insert into è normale
    http://igr4mbo.altervista.org (piano piano)

    "Abbiamo costruito un sistema che ci persuade a spendere il denaro che non abbiamo in cose che non necessitiamo per creare impressioni che non dureranno su persone che non ci interessano" cit.

  3. #3

  4. #4
    Faccio la query con un SELECT alla tabella A e mi prendo il valore che mi serve, poi con INSERT INTO li scrivo nella tabella B. Tutto perfetto, ma se devo modificare quel valore nella tabella A, nella tabella B me ne ritrovo uno nuovo, e non quello precedente aggiornato.

    Io vorrei fare questo, aggiornare il valore, ma ho cercato un po' in giro, e... o non ho trovato niente, oppure non sono in grado di capire se si può fare o no...

  5. #5
    Originariamente inviato da sircame
    Faccio la query con un SELECT alla tabella A e mi prendo il valore che mi serve, poi con INSERT INTO li scrivo nella tabella B. Tutto perfetto, ma se devo modificare quel valore nella tabella A, nella tabella B me ne ritrovo uno nuovo, e non quello precedente aggiornato.

    Io vorrei fare questo, aggiornare il valore, ma ho cercato un po' in giro, e... o non ho trovato niente, oppure non sono in grado di capire se si può fare o no...

    la insert to inserisce non aggiorna...per aggiornare devi usare "update"
    guarda qua http://www.w3schools.com/sql/sql_update.asp
    http://igr4mbo.altervista.org (piano piano)

    "Abbiamo costruito un sistema che ci persuade a spendere il denaro che non abbiamo in cose che non necessitiamo per creare impressioni che non dureranno su persone che non ci interessano" cit.

  6. #6
    Il problema con la query update è che ha bisogno di un requisito di confronto... il mio "requisito di confronto" è solo la stringa che cambia; se cambia e continene meno caratteri posso fare un
    Codice PHP:
    ...WHERE lavoro LIKE '%$valore%'"; 
    e mi potrebbe anche andare bene...
    ma se ne contiene di più non so come fare...

  7. #7
    Originariamente inviato da sircame
    Il problema con la query update è che ha bisogno di un requisito di confronto... il mio "requisito di confronto" è solo la stringa che cambia; se cambia e continene meno caratteri posso fare un
    Codice PHP:
    ...WHERE lavoro='%$valore%'"; 
    e mi potrebbe anche andare bene...
    ma se ne contiene di più non so come fare...
    potresti usare degli id univoci..

    sta di fatto che con la insert non avrai mai un aggiornamento...

    puoi anche eliminare la vecchia riga da b ed inserire la nuova...ovviamente senza un valore di confronto non la troverai mai più
    http://igr4mbo.altervista.org (piano piano)

    "Abbiamo costruito un sistema che ci persuade a spendere il denaro che non abbiamo in cose che non necessitiamo per creare impressioni che non dureranno su persone che non ci interessano" cit.

  8. #8
    Ustia... non ci avevo pensato... per il database creato fino adesso lascio così, farò manualmente, per i nuovi inserimenti nella tabella in A... quando con la query scrivo il valore nella tabella B creo un ulteriore campo dove vado ad inserire l'ID della tabella A. così poi lo ritrovo...

    Uhm... a parole è facile... moh provo... e spero di non


    Grazie per l'ispirazione!!!

  9. #9
    ma mettere una foreign key nella tabella B che punti al campo col codice della tabella A e nelle condizioni della foreign key mettere "ON UPDATE CASCADE" no?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  10. #10
    Originariamente inviato da Santino83_02
    ma mettere una foreign key nella tabella B che punti al campo col codice della tabella A e nelle condizioni della foreign key mettere "ON UPDATE CASCADE" no?
    Aspetta... aspetta... io avrei già risolto in maniera "grezza", però mi interessa quello che hai detto...
    Cioè se ho 2 tabelle e modifico la principale, quando vado a fare una query nella secondaria prende il valore aggiornato che ho imposto nella tabella principale?

    uhm... interessante... non sapevo di questa cosa... vado a documentarmi...
    Grazie!!!!

    P.s. mamma mia... da autodidatta ho ancora tanto da imparare...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.