|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
[MySQL] Come implemento le transazioni in PHP?!
Mi han detto che è 1 cavolata, metti un comando prima di manipolare le tabelle e poi 1 commit ed 1 rollback a seconda del caso.
Tutto qui?! ![]()
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. Ultima modifica di Matrixbob : 19-07-2005 alle 17:24. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
In mysql non lo so ma ti posso dire che per esempio oracle non rende definitiva un'azione fino a quando non esegui un commit, e se hai sbagliato puoi eseguire un semplice rollback.
Quindi presumibilmente in mysql è molto simile..... Ciao |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1449
|
Quote:
blah blah commit work; end transaction
__________________
Ciao ~ZeRO sTrEsS~ |
|
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Mar 2005
Città: ~
Messaggi: 706
|
certo...
Quote:
con.setAutocommit(false); // con è un oggetto di tipo Connection) // fai tutto quel che vuoi col db con.commit(); //se tutto ok // altrimenti scrivi: con.rollback(); ![]()
__________________
Ciao ciao cagnolino Billy ![]() ![]() ![]() MacMini late 2009, 2.53GHz, 4GB ram, 320GB hard disk, Snow Leopard 10.8.2 - iPod Nano 6th gen. XBOX Live GamerTag: InsaneMau |
|
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
1] begin transaction 2] commit work; 3] end transaction 4] ma per fare il rollback in caso che la modifica su una tabella è andata storta?! ... conviene sempre usarle le transazioni?! o quando?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
![]() Sai mica come faccio questo: SET AUTOCOMMIT=0; ?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Lo invii come se fosse una query...ovviamente come prima istruzioen della connessione che stai usando...ma controllane prima il valore, magari è già a zero...
|
![]() |
![]() |
![]() |
#10 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
Codice:
// connessione al DB ?! $sqlquery = "SET AUTOCOMMIT=0"; $queryresult = mysql_query($sqlquery, $connessione) or die(errore()); // altre istruzioni o disconnessione quindi?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sì...
|
![]() |
![]() |
![]() |
#12 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
![]()
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
![]() |
![]() |
![]() |
#14 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
Quando processi in concorrenza vogliono scrivere nel db?! Quindi ad esempio per la prenotazione di posti x 1 qualche evento?! Quindi non quando un utente si iscrive al sito, giusto?! Adesso provo a tradurmi quell'inglese, ma mi sa mio malgrado che dovrò chiedere ancora a voi, non me la cavo benissmo con le lingue ... ![]()
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
#15 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Le transazioni servono per un accesso concorrente quando dovresti altrimenti bloccare un macello di tabelle...
MySQL offre anche una politica di locking con le istruzioni LOCK e UNLOCK... |
![]() |
![]() |
![]() |
#16 |
Senior Member
Iscritto dal: Mar 2005
Città: ~
Messaggi: 706
|
leggi bene il sito
ci sono anche diverse modalità per la loro gestione, tipo read-committed ed altre che troverai sul sito.
quella più sicura (ma anche drastica) è serialized, cioè permette UN UNICO COMPITO PER VOLTA...nella maggior parte dei casi è molto restrittiva...
__________________
Ciao ciao cagnolino Billy ![]() ![]() ![]() MacMini late 2009, 2.53GHz, 4GB ram, 320GB hard disk, Snow Leopard 10.8.2 - iPod Nano 6th gen. XBOX Live GamerTag: InsaneMau |
![]() |
![]() |
![]() |
#17 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Comunque leggi bene quel capitolo... Con START TRANSACTION, AUTOCOMMIT è implicitamente settato a 0...
|
![]() |
![]() |
![]() |
#18 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
Non ho capito na mazza?! ... ho letto alla veloce perchè sto pensando a come mandare in esecuzione 10 quesri che deve fare il gestore del sito ... ![]()
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
#19 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
|
|
![]() |
![]() |
![]() |
#20 | |
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
Purtroppo solo stasera o domani proverò quanto detto in questo 3D. CMQ me lo tengo stretto mitico cionci. ![]()
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:43.