SELECT for update | SQL & MySQL

Topic: Pubblico - Composto da 1 Post di 1 Utente.

29 Settembre, 2011 10:36 #1
Ciao121
Utente

Ciao121
Registrato: Sep, 2011
Posts: 1
Offline

Ciaoa tutti,
mi scuso se l'argomento è stato già trattato ma non ho trovato un motore di ricerca per il forum (esiste?).

Ho il seguente problema (illustro con un esempio).
10 macchine, una volta al minuto, fanno una query sullo stesso database. Diciamo che tabella ha 1000 records.

Query id FROM tabella WHERE updated = 0 LIMIT 10.
Per ogni row tornata eseguono
UPDATE tabella set updated = 1 WHERE id = $row('$id').

Il problema è che, partendo ogni minuto 25 SELECT richio di avere più "istanze" che mi tornino la stessa row.

Cercano ho trovato un "SELECT FOR UPDATE" ma non ho capito bene se fa si che una istanza debba aspettare che termini una SELECT in atto prima di poter esguire la propria. Questo risolverebbe il mio problema?

Grazie 1000 :)

Condividi su:

Loggati o Registrati per replicare