Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-06-2005, 09:16   #1
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
[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 18:24.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 15:43   #2
tglman
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
tglman è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 16:14   #3
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
Quote:
Originariamente inviato da Matrixbob
Mi han detto che è 1 cavolata, metti un comando prima di manipolare le tabelle e poi 1 commit ed 1 roolback a seconda del caso.

Tutto qui?!
begin transaction
blah blah
commit work;
end transaction
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 16:36   #4
maulattu
Senior Member
 
L'Avatar di maulattu
 
Iscritto dal: Mar 2005
Città: ~
Messaggi: 740
certo...

Quote:
Originariamente inviato da beppegrillo
begin transaction
blah blah
commit work;
end transaction
se invece usi (x es.) java con le librerie mysql:
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
maulattu è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 16:50   #5
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da beppegrillo
begin transaction
blah blah
commit work;
end transaction
Cioè le "parole chiave" qui sono:
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.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 16:52   #6
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da maulattu
se invece usi (x es.) java con le librerie mysql:
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();

Giusto, dovrei fare una parte anche in tecnologia JAVA e quindi Serlvelt o JSP, qui invece come funzionano le transazioni?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 17:24   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
http://dev.mysql.com/doc/mysql/en/commit.html
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 17:41   #8
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da cionci
Mi mancava Cionci!!
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.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 18:20   #9
cionci
Senior Member
 
L'Avatar di cionci
 
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...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 18:52   #10
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da cionci
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...
Codice:
// connessione al DB ?!
$sqlquery = "SET AUTOCOMMIT=0";
$queryresult = mysql_query($sqlquery, $connessione) or die(errore());
// altre istruzioni o disconnessione quindi?!
Così?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 18:55   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sì...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 18:58   #12
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da cionci
Sì...
Mi sento imbecille , e per vedere come hai detto tu se è settato ti ricordi mica come si fa invece?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 21-06-2005, 19:02   #13
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
http://dev.mysql.com/doc/mysql/en/set-option.html
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 11:00   #14
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da cionci
Anzitutto, ma quando vanno usate le transazioni?!
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.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 12:22   #15
cionci
Senior Member
 
L'Avatar di cionci
 
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...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 12:50   #16
maulattu
Senior Member
 
L'Avatar di maulattu
 
Iscritto dal: Mar 2005
Città: ~
Messaggi: 740
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
maulattu è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 12:54   #17
cionci
Senior Member
 
L'Avatar di cionci
 
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...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 13:33   #18
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da cionci
Comunque leggi bene quel capitolo... Con START TRANSACTION, AUTOCOMMIT è implicitamente settato a 0...
Quindi una volta che uso quelle istruzioni lui si autosetta a 0?!
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.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 23-06-2005, 14:08   #19
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Matrixbob
Quindi una volta che uso quelle istruzioni lui si autosetta a 0?!
Sì...la START TRANSACTION imposta atomaticamente autocommit a 0 fino al prossimo COMMIT o ROLLBACK...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 18-07-2005, 20:06   #20
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da cionci
Sì...la START TRANSACTION imposta atomaticamente autocommit a 0 fino al prossimo COMMIT o ROLLBACK...
Secondo voi è possibile mantenere la transazione aperta anche passando da pagina in pagina?! Forse se non chiudo la connessione al DBMS c'è la fa.
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.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
La Cina si prepara al primo lancio orbit...
Sale LAN, la Manovra 2027 introduce una ...
11 prezzi imperdibili in Amazon: non sol...
Giù i prezzi di Xiaomi 17T e Xiao...
Una tassa di 5,5 centesimi su ogni gigab...
Vuoi clonare un videogioco con l'IA? Cla...
Furto da 6,3 miliardi di dollari, Binanc...
Gli USA dipendono dai robot stranieri: T...
Volkswagen non ha più soldi per l...
Telescopio spaziale Hubble: la NASA cerc...
Più sottile e potente: le nuove i...
Il JPL estende la vita operativa della s...
DAZN Full è in offerta: tutta la ...
GTA 6 su PC potrebbe arrivare prima del ...
Da zero al tracciato in secondi: LibreCo...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:19.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v