Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Fare l'update di piu' righe

    Ciao a tutti,
    ho un problema, a causa di un inventario devo modificare le quantita' dei prodotti presenti nel mio database, e lo devo eseguire piu' volte.

    Per non aprire varie connessioni ho pensato che e' piu' velocefare una sola connessione ed in questa mettere tutti gli UPDATE.

    Quindi ho pensato di fare in questo modo:

    $result = mysql_query("
    UPDATE shop_prodotti SET quantita_prodotto='2' WHERE id_prodotto='11496';
    UPDATE shop_prodotti SET quantita_prodotto='5' WHERE id_prodotto='11495';
    UPDATE shop_prodotti SET quantita_prodotto='9' WHERE id_prodotto='11494';
    UPDATE shop_prodotti SET quantita_prodotto='3' WHERE id_prodotto='11493';
    UPDATE shop_prodotti SET quantita_prodotto='1' WHERE id_prodotto='11492';
    ", $conn) or die(mysql_error($conn));

    Ma mi da il segienbte erroe:
    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 '; UPDATE shop_prodotti SET quantita_prodotto='99' WHERE id_prodotto='11490'' at line 1

    Se invece modifico una sola riga alla volta va bene.
    E se metto quella query cosi com'è in phpmyadmin funziona.

    Dove sbaglio???
    E soprattutto e' molto pesante l'operazione se faccio una query alla volta per tutte le righe da udatare????

    Grazie....mi sto scervellando...

  2. #2
    Utente di HTML.it L'avatar di Threepwood
    Registrato dal
    Feb 2003
    Messaggi
    2,107
    facendo qualcosa di questo tipo credo sia mejo

    UPDATE shop_prodotti SET quantita_prodotto='2' WHERE id_prodotto in (1,2,3,4,5,6);

    Guybrush Threepwood

  3. #3
    pero' cosi' mette quantita 2 a tutti quegli id...mentre ogni riga deve avere una quantita diversa dall'altra.

    Per ora ho risolto favedno una query per ogni update.

    La cosa strana e' che questa cosa con INSERT al posto di UPDATE mi funziona benissimo

  4. #4
    Originariamente inviato da menozero
    pero' cosi' mette quantita 2 a tutti quegli id...mentre ogni riga deve avere una quantita diversa dall'altra.

    Per ora ho risolto favedno una query per ogni update.

    La cosa strana e' che questa cosa con INSERT al posto di UPDATE mi funziona benissimo
    ogni comando UPDATE che ha valori diversi per lo stesso campo vuole una query per conto suo con la specifica condizione where (che puo' essere multipla per lo stesso valore).

    Con l'insert in realta' la sintassi e' diversa. E poi non esiste l'istruzione where.....

    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.