Originariamente inviato da *pragma
che riguardano l'armadio fino a che l'operazione non va a buon fine
il tuo esempio mi ha fatto un pò di confusione

quando dici "che riguardano l'armadio" intendi solo l'armadio? quindi sulle sedie qualcuno potrebbe intervenire? perchè il mio dubbio sostanziale dei lock è questo :

il DB fà il lock sul singolo record o su TUTTA la tabella?

cioè, è possibile che mentre faccio un select su 2000 record di una tabella, uno possa scriverci?

es. 2000 record, arrivo a fare il SELECT del 1000° : se in quel preciso istante uno fà un delete o insert o update sul 864° o sul 1300° può?

a rigor di logica, spero propio di no

Originariamente inviato da LeaderGL
ti posso consigliare di farti una domanda che forse ti aprirà alcune strade per risolvere il problema:
1) cosa significa, in termini pratici, fare un LOCK su una tabella?
2) cosa viene bloccato e come si capisce che una cosa è bloccata?
1) significa bloccare tutti i record della tabella, prima di liberarli (solo su operazioni di read-editing, read-read i locks non vengono presi in considerazione).

2) effettivamente è quello che vorrei sapere