par
sirakawa » 08 mars 2012, 11:23
Euh non lock table n'est pas à utiliser dans un pareil cas, c'est pour gérer les accès concurrentiel en fait...
C'est à utiliser sur un thread, donc pas dans le cadre d'une multiple requêtage client-serveur, sinon on risque de bloquer la table indéfiniment...
Si
"Je souhaiterais qu'un administrateur se connectant à l'administration du site ne puisse pas accéder aux pages/articles qui sont en cours d'utilisation par un autre administrateur et là je séche .." n'est pas un problème d'accès concurrent (et pas concurrentiel, au passage,...
Si un thread obtient un verrouillage READ sur une table, ce thread (et tous les autres threads) peuvent uniquement accéder a cette table en lecture. Si un thread obtient un verrouillage WRITE sur une table, alors seul le thread qui a posé le verrou peut lire ou écrire sur cette table. Tous les autres threads sont bloqués.
Bien sûr il serait mieux de bloquer un seul enregistrement, et ça existe ailleurs que chez Mysql
mais il existe aussi:
http://dev.mysql.com/doc/refman/5.0/fr/ ... reads.html
[quote="xTG"]Euh non lock table n'est pas à utiliser dans un pareil cas, c'est pour gérer les accès concurrentiel en fait...
C'est à utiliser sur un thread, donc pas dans le cadre d'une multiple requêtage client-serveur, sinon on risque de bloquer la table indéfiniment...
[/quote]
Si
"Je souhaiterais qu'un administrateur se connectant à l'administration du site ne puisse pas accéder aux pages/articles qui sont en cours d'utilisation par un autre administrateur et là je séche .." n'est pas un problème d'accès concurrent (et pas concurrentiel, au passage,...
Si un thread obtient un verrouillage READ sur une table, ce thread (et tous les autres threads) peuvent uniquement accéder a cette table en lecture. Si un thread obtient un verrouillage WRITE sur une table, alors seul le thread qui a posé le verrou peut lire ou écrire sur cette table. Tous les autres threads sont bloqués.
Bien sûr il serait mieux de bloquer un seul enregistrement, et ça existe ailleurs que chez Mysql
mais il existe aussi:
http://dev.mysql.com/doc/refman/5.0/fr/innodb-locking-reads.html