IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Mise à jour concurrentiel


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2004
    Messages : 4
    Par défaut Mise à jour concurrentiel
    Hello tout le monde !
    Voila je suis en train de developper une application de gestion de demande.
    Celles ci doit pouvoir etre mise à jour.
    Je voudrais savoir comment faire pour eviter que 2 personnes ne modifient la meme demande.

    Pour info je me connecte via une fonction présente dans une classe (récupéré sur un des tutoriels de Romain Puyfoulhoux présent sur ce site encore merci )




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
        'Fonction pour creer un rst et donc executer les requetes
     
    Public Function CreeRecordset(sql As String) As ADODB.Recordset
     
    Dim cnn As ADODB.Connection, rst As ADODB.Recordset
     
    On Error GoTo fail
     
    Set cnn = CreeConnexion()
     
    Set rst = New ADODB.Recordset
    rst.CursorLocation = adUseClient
    rst.Open sql, cnn, adOpenDynamic, adLockOptimistic ' adLockPessimistic
    Set rst.ActiveConnection = Nothing
     
    cnn.Close
    Set cnn = Nothing
     
    Set CreeRecordset = rst
    Donc si quelqu'un a une idée merci d'avance

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 730
    Par défaut
    Bonjour,

    tu as la réponse sous les yeux, grâce à l'utilisation du verrou adLockPessimistic à la place de adLockOptimistic

    Fais une petite recherche sur ces 2 mots clés pour détailler leur fonctionnement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    'Fonction pour creer un rst et donc executer les requetes
    
    Public Function CreeRecordset(sql As String) As ADODB.Recordset
    
    Dim cnn As ADODB.Connection, rst As ADODB.Recordset
    
    On Error GoTo fail
    
    Set cnn = CreeConnexion()
    
    Set rst = New ADODB.Recordset
    rst.CursorLocation = adUseClient
    rst.Open sql, cnn, adOpenDynamic, adLockOptimistic ' adLockPessimistic
    Set rst.ActiveConnection = Nothing
    
    cnn.Close
    Set cnn = Nothing
    
    Set CreeRecordset = rst

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2004
    Messages : 4
    Par défaut
    J'ai essayé cette option mais le probleme vient du fait que le recordset est reinitialisé à chaque fois.
    et donc comme l'enregistrement n'est bloqué que le temps de ma requete.
    En fait je voudrais savoir s'il est possible de verifier avant de mettre à jour les données, si celles ci ont changé entre temps.

    Merci

  4. #4
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Il faut toujours placer un verrou avant de modifier un record.
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2004
    Messages : 4
    Par défaut
    Cool merci pour l'info !!!!

    Mais comment fait on pour placer un verrou ???

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/11/2011, 11h04
  2. Réponses: 12
    Dernier message: 30/11/2009, 00h12
  3. Mise à jour de la version de MySQL
    Par jobstar dans le forum Administration
    Réponses: 8
    Dernier message: 18/08/2003, 10h45
  4. mise à jour de champs time (interbase)
    Par pram dans le forum XMLRAD
    Réponses: 6
    Dernier message: 04/03/2003, 10h25
  5. Réponses: 2
    Dernier message: 12/02/2003, 15h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo