è possibile fare:
$sql1="INSERT... (...)VALUE(...),INSERT... (...)VALUE(...)";
mysql_query($sql1);
cioè metter + insert in una sola query?
è possibile fare:
$sql1="INSERT... (...)VALUE(...),INSERT... (...)VALUE(...)";
mysql_query($sql1);
cioè metter + insert in una sola query?
Puoi fare inserimenti multipli separando i valori con virgole, ma non piu query INSERT nello stesso comando. Questo esempio e' fattibile e inserisce tre righe:Originariamente inviato da FinalFantasy
è possibile fare:
$sql1="INSERT... (...)VALUE(...),INSERT... (...)VALUE(...)";
mysql_query($sql1);
cioè metter + insert in una sola query?
codice:INSERT INTO tabella (campo1, campo2, campo3 , altri) VALUES ('$value1', 'value2', '$value3', '$altri'), ('$value4', 'value5', '$value6', '$altri'), ('$value7', 'value8', '$value9', '$altri')![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
così forse no,
ma così sicuramente.
INSERT INTO a VALUES (1,23),(2,34),(4,33);
azzzz.....
bruciato.![]()
proprio quello ke mi serviva...avevo visto farlo in un posto e nn ricordavo la sintassi...thx
è possibile fare la stessa cosa con gli update?
No. Con UPDATE puoi fare piu' record da descrivere nella condizione where a condizione che la modifica da effettuare sia la stessa. Oppure senza where, la modifica viene estesa indistintamente a tutta la tabella.Originariamente inviato da FinalFantasy
è possibile fare la stessa cosa con gli update?
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
nn si può record diversi, modifiche diverse anche se è per lo stesso campo?
solo con comandi sqlOriginariamente inviato da FinalFantasy
nn si può record diversi, modifiche diverse anche se è per lo stesso campo?
esempio
UPDATE tabella SET campo=altrocampo
questa query prende tutti i record e modifica campo con un valore diverso (ma deve essere ricavato cono funzioni mysql o dagli altri campi di quel record)
E' possibile anche prendere il valore da un'altra tabella e da piu' campi calcolati o meno. Deve essere descritto il bisogno preciso e fare una query ad hoc.Originariamente inviato da bubu77
solo con comandi sql
esempio
UPDATE tabella SET campo=altrocampo
questa query prende tutti i record e modifica campo con un valore diverso (ma deve essere ricavato cono funzioni mysql o dagli altri campi di quel record)
Genericamente inteso come similitudine ad un INSERT multiplo la risposta e' no. Non esiste la possibilita' di eseguire modifiche con quel criterio, cioe' con valori provenienti da uno script dove per ogni record si associa un valore diverso.
Tra parentesi, inoltre bisogna considerare anche che in queste query multiple, nel caso di timestamp unix o mysql oppure di datetime, verra' messo lo stesso istante di tempo per tutti i record inseriti/modificati, perche' l'ora di sistema verra' letta solo per il primo record ed applicata a tutti.
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
MI aggancio per una domanda attinente il 3d ma di natura più teorica che pratica
Io faccio update di tanti record mostrati contemporaneamente in un form con un codice semplice fatto così
La mia preoccupazione è che, dovendo fare la cosa su circa 500 record alla volta, ho paura di creare un aggravio delle risorse sul server. Con il "vecchio" Visual Basic si poteva usare le transazioni per evitare di scrivere ogni volta nel db, ma con Mysql devo usare tabelle INNODB e transazioni? oppure non mi devo preoccupare? Graziecodice:$query = "SELECT id FROM campi"; $risultato = mysql_query($query) or die("Query fallita: " . mysql_error() ); while ($riga = mysql_fetch_array($risultato, MYSQL_NUM)) { $str="UPDATE campi SET campo='".$_POST[$riga[0]]."', fatto='".$_POST[$riga[0]."_fatto"]."' WHERE id=".$riga[0].";"; $res = mysql_query($str) or die("Query fallita: " . mysql_error() ); } mysql_free_result($risultato);