Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Insert di risultati

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    4

    Insert di risultati

    Ciao a tutti volevo sapere se qualcuno sapeva se era possibile fare un INSERT del risultato di una precedente query...

    Esempio del risultato:
    SELECT * FROM nometabella WHERE Campo1 = 'X'

    Ecco queste rows vorrei inserirle su una tabella "clone" della prima (le tabelle risiedono in server mysql diversi quindi non posso fare semplicemente INSERT INTO 'tabella_di_destinazione' SELECT * FROM 'tabella_da_copiare' ) e vorrei evitare di formattare tutte le query 1 ad 1 con i field ... non sò se mi sono spiegato... Grazie a chiunque ci abbia capito qualcosa e sappia rispondermi

  2. #2
    Potresti raccogliere il resultset in un file da inviare al secondo server.

    SELECT * INTO OUTFILE ....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    4
    Ottima pensata ma temo di non avere gli accessi GRANT e FILE per utilizzarlo... non si può fare nulla direttamente da php? ( la connessione ai 2 server ce l'ho.. )

  4. #4
    2 query no? prima una, ricavi il risultato e fai partire l'altra. [forse ho detto una stronzata]

  5. #5
    Originariamente inviato da Nydirac
    Ottima pensata ma temo di non avere gli accessi GRANT e FILE per utilizzarlo... non si può fare nulla direttamente da php? ( la connessione ai 2 server ce l'ho.. )
    raccogli il result set in un array, poi cambi la connessione e lo inserisci

    ovviamente bisognera' fare uno script ad hoc.... un po' complicato ma non impossibile.

    piu' o meno:

    codice:
    ....
    while ($row = mysql_fetch_row($res) ) {
    
     $set[] =  implode("','" , $row) ;
    
    }
    mysql_close();
    poi apri la nuova connessione e fai una scansione dell'array $set....

    codice:
    foreach($set as $value) {
      
      echo "INSERT INTO tabella VALUES ('$value')\r\n";
      
      }
    ovviamente al posto di echo farai la tua query... l'echo ti serve solo per provare.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  6. #6

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    4
    Gratz così và benone già stavo facendo una funzione per farmi le query complete con i field... ( anzi l'aveov pure finito ma così è molto + veloce )

  8. #8
    Originariamente inviato da Nydirac
    Gratz così và benone già stavo facendo una funzione per farmi le query complete con i field... ( anzi l'aveov pure finito ma così è molto + veloce )
    certo... pensandolo avevo detto un po' complicato .. poi scrivendo mi son reso conto che era piu' semplice. Un problema che potresti incontrare potrebbe essere il settaggio di SQL-MODE che nell'opzione piu severa (strict-mode) non accetterebbe le apici sui numerici.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.