Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Administration
Administration Forum d'entraide sur l'administration de MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/01/2005, 17h39   #1
Invité de passage
 
Inscription : juillet 2002
Messages : 14
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 14
Points : 3
Points : 3
Par défaut Empecher Lecture d'Enregistrement en cours de Modification

Bonjour,

Je developpe une application php utilisant une base de données MySQL.
J'ai donc des utilisateurs qui, via une interface Intranet, peuvent modifier des enregistrment de la BDD.

Cependant, je souhaiterais que lorsqu'une personne est en train de traiter un enregistrement, tout autre utilisateur ne peut avoir acces a celui-ci.

Je pense ne pas m'etre tromper de forum, si vous pensez qu'il s'agit plus d'un probleme php, merci de me le dire.

Tony
toony est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2005, 22h14   #2
Membre Expert
 
Avatar de Alexandre T
 
Inscription : mai 2002
Messages : 1 022
Détails du profil
Informations personnelles :
Âge : 35
Localisation : France, Meurthe et Moselle (Lorraine)

Informations forums :
Inscription : mai 2002
Messages : 1 022
Points : 1 123
Points : 1 123
C'est le mot clef LOCK qu'il te faut utiliser pour vérouiller la table à toute autre session.
Code :
1
2
3
4
5
 
LOCK TABLES
    tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}
    [, tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}] ...
UNLOCK TABLES
http://dev.mysql.com/doc/mysql/fr/LOCK_TABLES.html
__________________
Alexandre T.

PHP5/MySQL5 Codes prêts à l'emploi
30 projets avec codes sources complets pour créer diaporamas photos, chat, arbre généalogique, statistiques de visites, création de graphiques, moteur de recherche, Sudoku etc...

Mes articles
Alexandre T est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2005, 11h43   #3
Invité de passage
 
Inscription : juillet 2002
Messages : 14
Détails du profil
Informations forums :
Inscription : juillet 2002
Messages : 14
Points : 3
Points : 3
Par défaut Resolu

Merci beaucoup
toony est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2005, 12h47   #4
Membre habitué
 
Homme amine bourhil
Conseil - Consultant en systèmes d'information
Inscription : novembre 2004
Messages : 104
Détails du profil
Informations personnelles :
Nom : Homme amine bourhil
Localisation : Maroc

Informations professionnelles :
Activité : Conseil - Consultant en systèmes d'information
Secteur : Conseil

Informations forums :
Inscription : novembre 2004
Messages : 104
Points : 108
Points : 108
Envoyer un message via MSN à bmamine Envoyer un message via Yahoo à bmamine Envoyer un message via Skype™ à bmamine
Par défaut LOCK TABLE

Svp, pour MySQL je croyais qu'il ne permet pas les enregistrement concurrents ( un seul enregistrement à la fois ) donc on doit être tranquille non? :
bmamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2009, 11h18   #5
Membre du Club
 
Inscription : novembre 2006
Messages : 173
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 173
Points : 43
Points : 43
Citation:
Envoyé par Alexandre T Voir le message
C'est le mot clef LOCK qu'il te faut utiliser pour vérouiller la table à toute autre session.
Code :
1
2
3
4
5
 
LOCK TABLES
    tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}
    [, tbl_name [AS alias] {READ [LOCAL] | [LOW_PRIORITY] WRITE}] ...
UNLOCK TABLES
http://dev.mysql.com/doc/mysql/fr/LOCK_TABLES.html
J'ai un problème avec cette méthode en effet elle verrouille la table au lieu de verrouiller l'enregistrement concerné uniquement... je sais qu'il existe des mécanismes dans InnoDb permettant de faire un lock sur la ressource avec timeout pour éviter les accès permanent.
lekunfry est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h25.


 
 
 
 
Partenaires

Hébergement Web