piero ... sai se questa sintassi va anche con il replace?
xche sarebbe qualcosa di infinitamente comodo![]()
piero ... sai se questa sintassi va anche con il replace?
xche sarebbe qualcosa di infinitamente comodo![]()
The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand
Certo che si. Pero' bisogna stare attenti al fatto che la tupla prima viene cancellata e poi riscritta. La sintassi e' identica INSERT ... SELECT, ma bisogna verificare le specifiche richieste di REPLACE. Mi spiego meglio, INSERT non considera il WHERE ovviamente e neppure REPLACE. Pero' REPLACE si basa sulla chiave primaria o su una chiave unica, senza di queste si comporta esattamente come un INSERT.[supersaibal]Originariamente inviato da daniele_dll
piero ... sai se questa sintassi va anche con il replace?
xche sarebbe qualcosa di infinitamente comodo[/supersaibal]
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
replace considera la chiave primaria (da quanto ho capito) e le chiavi uniche (credo io) per sostituire solo i dati passati
almeno lo uso cosi ... xo ottimo ... xche è possibile aggiornare una tabella senza svuotarla, anzi, aggiungendo altri campi!
^^
ad es se trasferisci i dati da un altro db\tabella su mysql ... li estrai e li inserisci con un replace into![]()
The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand
Si, considera la chiave primaria od in alternativa una chiave UNIQUE che deve essere presente nella parte SELECT. Quindi la premessa per fare quello che dici e' avere due tabelle con chiavi primarie identiche o meglio campi UNIQUE comuni (piu' semplice).[supersaibal]Originariamente inviato da daniele_dll
replace considera la chiave primaria (da quanto ho capito) e le chiavi uniche (credo io) per sostituire solo i dati passati
almeno lo uso cosi ... xo ottimo ... xche è possibile aggiornare una tabella senza svuotarla, anzi, aggiungendo altri campi!
^^
ad es se trasferisci i dati da un altro db\tabella su mysql ... li estrai e li inserisci con un replace into[/supersaibal]
Numericamente ti rende il doppio delle righe sostituite ed una sola riga per gli inserimenti. Non e' quindi possibile capire quante righe modificate, quante tralasciate e quante nuove inserite con mysql_affected_rows.
Puoi farti il backup utilizzando REPLACE al posto di INSERT e cosi' puoi aggiornare la tabella interessata senza doverla cancellare. Tienila come valore aggiunto per la tua classe di DUMP.
![]()
Il silenzio è spesso la cosa migliore. Pensa ... è gratis.
diciamo che ho una situazione particolare ... una tabella che riempo partendo da un as/400 ... quindi invece di avere 2 tabelle distinte che joino ... aggiungo i campi che mi servono nella prima ... e uso replace ... tanto questo non fa altro che fare un update se il dato è presente
The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand