Navigazione

  • CATEGORIES
  • Discussioni
  • Non letti
  • Recenti
  • Hashtags
  • Popolare
  • Utenti
  • Registrati
  • Accedi
Privacy - Termini e condizioni
© 2020 Search On Media Group S.r.l.
  • Registrati
  • Accedi
  • CATEGORIES
  • Discussioni
  • Non letti
  • Recenti
  • Hashtags
  • Popolare
  • Utenti
  • Stream
  • Interest
  • Categories
  1. Home
  2. Categorie
  3. Coding e Sistemistica
  4. Coding
  5. Copia tabella su altra tabella
Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
  • I
    ienavr User Attivo • 30 gen 2007, 19:44 ultima modifica di

    ottimo...per l'update credo che si possa fare...

    0 Miglior Risposta Ringrazia Cita Rispondi

      1 Risposta Ultima Risposta
    • P
      peterminnow User Attivo • 30 gen 2007, 19:49 ultima modifica di

      ok...prendiamoci la pausa, la notte porta consiglio!!...ti sono veramente riconoscente, è tutto perfetto!!

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • P
        peterminnow User Attivo • 31 gen 2007, 08:33 ultima modifica di

        Tutto Ok, questa è la query definitiva provata e funzionante:

        $query = "INSERT IGNORE INTO weborders_clienti (idCliente,Nome,Cognome,NomeUtente,Password,PI_CF,Telefono,Email,Indirizzo,NCivico,Cap,Citta,Provincia,Societa,Consegna,Pagamento,Fattura,Attivo) SELECT u.id,c.firstname,c.lastname,u.username,u.password,c.cb_picf,c.cb_telefono,u.email,c.cb_indirizzo,c.cb_numerocivico,c.cb_cap,c.cb_citta,c.cb_provincia,c.cb_societa,c.cb_consegna,c.cb_pagamenti,c.cb_fattura,c.confirmed FROM weborders_users AS u INNER JOIN weborders_comprofiler AS c ON u.id = c.id WHERE u.id!=' '";

        ...se abbiamo tempo e soluzione per fare l'UPDATE come dicevamo diventerebbe perfetta!!

        Una cosa volevo chidere: la lettera u e la lettera **c **come sono saltate fuori?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • I
          ienavr User Attivo • 31 gen 2007, 08:51 ultima modifica di

          Sono venute fuori da questo pezzo qui:

          FROM weborders_users AS u INNER JOIN weborders_comprofiler AS c

          AS significa ALIAS...ossia scrivendo weborder_users AS u io assegno un nome alternativo (in questo caso u) a weborder_users. Così facendo posso scrivere in modo più comodo e leggibile la query.

          Avrei anche potuto non usare l'alias, ma in tal caso mi sarei ritrovato a scrivere:

          $query = "INSERT IGNORE INTO weborders_clienti (idCliente,Nome,Cognome,NomeUtente,Password,PI_CF, Telefono,Email,Indirizzo,NCivico,Cap,Citta,Provinc ia,Societa,Consegna,Pagamento,Fattura,Attivo) SELECT weborder_users.id,weborder_comprofiler.firstname,weborder_comprofiler.lastname,weborder_users.username,weborder_users.password.....

          capisci che è scomodo e poco chiaro

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • P
            peterminnow User Attivo • 31 gen 2007, 08:56 ultima modifica di

            direi che con MSYQL ci giochi a PALLONE!
            ...mi basterebbe 1/4 dei tuoi PALLEGGI!!!

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • P
              peterminnow User Attivo • 31 gen 2007, 11:38 ultima modifica di

              Avrei trovato qualcosa quì

              http://guide.dada.net/database/interventi/2001/05/45041.shtml

              ...ma non riesco!

              sto facendo una prova con questo...ma ovviamente non funziona!

              $query = "UPDATE weborders_clienti SET Email = SELECT email FROM weborders_users WHERE id!=' '";

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • I
                ienavr User Attivo • 31 gen 2007, 12:59 ultima modifica di

                $query = "UPDATE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ')";

                così è già più corretta ma devi anche dirgli dove fare l'update però

                se vuoi fare l'update su tutte le righe usa REPLACE

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • P
                  peterminnow User Attivo • 31 gen 2007, 13:04 ultima modifica di

                  infatti l'errore che mi torna è questo:

                  UPDATE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ')Subquery returns more than 1 row

                  stesso errore con REPLACE

                  REPLACE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ')Subquery returns more than 1 row

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • I
                    ienavr User Attivo • 31 gen 2007, 13:14 ultima modifica di

                    perchè devi aggiungere un WHERE esterno:

                    REPLACE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ') WHERE id != ' '

                    però ti serve anche un'altra condizione di corrispondenza affinchè la query sia eseguita con criterio e non sovrascriva valori sballati

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • P
                      peterminnow User Attivo • 31 gen 2007, 13:17 ultima modifica di

                      okm ora provo..infatti stavo provando con questa:

                      $query = "UPDATE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE email) WHERE Email";

                      ..non mi dà errore ma nemmeno la modifica!!

                      ora provo la tua

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • P
                        peterminnow User Attivo • 31 gen 2007, 13:19 ultima modifica di

                        mi da questo errore:

                        REPLACE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ') WHERE id !=' 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id !=' '' at line 1

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • I
                          ienavr User Attivo • 31 gen 2007, 14:12 ultima modifica di

                          scusa...avevo sbagliato a copiare e incollare!

                          Non volevo scrivere:

                          REPLACE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ') WHERE id !=' '

                          ma

                          UPDATE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ') WHERE id !=' '

                          però devi aggiungere un AND e un'altra condizione perchè funzioni correttamente

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • P
                            peterminnow User Attivo • 31 gen 2007, 14:41 ultima modifica di

                            sto provando questa:

                            $query = "UPDATE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE id!=' ') WHERE Email AND email";

                            ...non mi dà errore ma nemmeno la modifica!

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • I
                              ienavr User Attivo • 31 gen 2007, 14:50 ultima modifica di

                              cosa significa: WHERE Email AND email" ??

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • P
                                peterminnow User Attivo • 31 gen 2007, 14:58 ultima modifica di

                                sai quando una cosa non si studia dalle basi, e quindi sapere cosa si fà, questo è il risultato!
                                cerco di mettercela tutta per capire...ma forse sto iniziando con una auto di grossa cilidrata!

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • I
                                  ienavr User Attivo • 31 gen 2007, 15:12 ultima modifica di

                                  beh te la stai cavando bene mi pare!

                                  cmq la mia domanda di prima era per cercare di capire cosa volessi fare con quella istruzione...forse è solo scritta male...

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • P
                                    peterminnow User Attivo • 31 gen 2007, 15:17 ultima modifica di

                                    ...in realtà cercavo di mettere in pratica ciò che avevo trovato a questo indirizzo:

                                    http://guide.dada.net/database/interventi/2001/05/45041.shtml

                                    Come per la insert vanno rispettati tutti i constraint e le dimensioni e i tipi dei campi. Quindi non e' possibile modificare un numero e sostituirlo con una stringa, annullare il valore di una colonna not null ecc.
                                    E' possibile modificare uno o piu' record andando a prendere il valore da un'altra tabella o dalla stessa, ad esempio supponiamo di voler spostare MARIO BIANCHI nella stessa sede di PAOLO VERDI.
                                    Potremmo andare a leggere, con una select, dalla tabella impiegati la sede del sig. VERDI e successivamente, con una update modificare la sede del sig. BIANCHI, oppure fare tutto con una sola istruzione:

                                    UPDATE impiegati
                                    set sede = (SELECT sede FROM impiegati WHERE nome = 'PAOLO' AND cognome='VERDI')
                                    WHERE nome = 'MARIO' AND cognome ='BIANCHI';

                                    ma non sembra che ci stia riuscendo!

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • P
                                      peterminnow User Attivo • 31 gen 2007, 16:54 ultima modifica di

                                      allora con questa:

                                      $query = "UPDATE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE Email)";

                                      si cancellano tutte le mail in weborders_clienti! quindi forse è la strada giusta!!...la vedo molto lunga

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • P
                                        peterminnow User Attivo • 1 feb 2007, 09:48 ultima modifica di

                                        scusate l'insistenza....ma cerco di andare avanti un po per tentativi ed un po su manuali, e quindi sto provando e riprovando con questa istruzione UPDATE.
                                        Ad esempio con questa:

                                        $query ="UPDATE weborders_clienti SET Email=5 WHERE Email!=' '";

                                        inserisco il numero 5 in tutti i campi Email della tabella **weborders_clienti

                                        **quindi ora se invece del numero 5 io devo inserire dei dati che devo prendere da un'altra tabella, ad esempio weborders_users al posto del 5 dovrei inserire (SELECT email FROM weborders_users WHERE Email) ma cosi facendo invece mi cancella tutte le Email in **weborders_clienti, **quindi già partendo con questa semplice cosa non funziona, figuriamoci che poi i campi su dove devo fare UPDATE sono diversi!!...ma almeno la soddisfazione di risolvere dalle cose più semplici!
                                        Grazie cmq del sostegno avuto fino ad ora, che non è stato poco!
                                        ciao a tutti Peter

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • I
                                          ienavr User Attivo • 1 feb 2007, 10:04 ultima modifica di

                                          $query = "UPDATE weborders_clienti SET Email = (SELECT email FROM weborders_users WHERE email) WHERE Email!=' '";

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          Caricamento altri post
                                          Rispondi
                                          • Topic risposta
                                          Effettua l'accesso per rispondere
                                          • Da Vecchi a Nuovi
                                          • Da Nuovi a Vecchi
                                          • Più Voti