|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
[MySql]Problema concorrenza UPDATE
Come viene gestita la concorrenza in una query di tipo UPDATE?
Se due utenti fanno un update allo stesso momento che succede? |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1727
|
Quote:
quindi da quando la "where" legge a quando la "set" scrive, non possono esserci cambiamenti.
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino. |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Se due utenti fanno una update insieme ha ragione dupa, ma se i due utenti fanno una update selezionando le tuple in base a query precedenti allora si devono possono fare due cose:
- includere il tutto in un transazione (tabelle InnoDB) - fare lock della tabella prima delle query che determinano le tuple da selezionare per l'update e rilasciarla dopo l'update (tabelle MyISAM) |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Quote:
Cosa sono le tuple in base ai query precedenti? Perdonami se è una domanda banale ma non sono ferratissimo sull'argomento, sto iniziando a guardarli ora i db. |
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1727
|
Quote:
se vuoi la garanzia che un gruppo di più query venga eseguito in "un colpo solo" senza che altre query esterne possano infilarsi in mezzo devi racchiuedere le query in una "transazione", che verrà eseguita solo quando ne darei il "commit"
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino. |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Ok credo di aver capito, l'unica mia necessità è che se io salvo dei dati in un campo, e allo stesso tempo un altro utente salva dati nello stesso campo, i dati non siano "mischiati".
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Per tupla si intende una "riga" di una relazione (tabella)... |
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
scusate se mi intrometto, ma sono interessato anche io
Io da alcuni esempi trovati sul sito ufficiale di mysql stavo agendo così: Codice:
LOCK TABLES nometabella WRITE; UPDATE nometabella SET blablbalbalbabla.... UNLOCK TABLES; Grazie. Raoul.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 1727
|
Quote:
__________________
Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe? Il cestino. |
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
Ma non ho ancora studiato le transazioni. Inoltre il db che sto progettando può essere al massimo usato contemporaneamente da 4/5 utenze. Intanto mi documento e grazie ancora
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quindi ricordati di fare tabelle MyISAM...
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:39.



















