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 d'un enregistrement avec ADO


Sujet :

VB 6 et antérieur

  1. #1
    Membre confirmé Avatar de muzele
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 144
    Par défaut Mise à jour d'un enregistrement avec ADO
    Bonsoir,
    J'ai une table qui contient un certain nombre d'enregistrement, lorsque je tente de faire une mise à jour d'un enregistrement j'ai cette erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Run-time error '-214721913 (80040e07)':
    Type de données incompatible dans l'expression du critère.
    Voici le code de mon bouton commande
    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
     
    Private Sub Command1_Click()
     
        Set UpdateAgent = New ADODB.Recordset
        UpdateAgent.Open "SELECT * FROM IDplomat WHERE N° = """ & TxtSearchMatri.Text & """  ", Cnx, adOpenStatic, adLockOptimistic
     
        UpdateAgent.Update
     
        UpdateAgent!Etablissement = TxtEtablissement.Text
        UpdateAgent!AdresseMail = TxtCourriel.Text
        UpdateAgent!Validite = LblValidite.Caption
        UpdateAgent!Mission01 = TxtMission01.Text
        UpdateAgent!Mission02 = TxtMission02.Text
        UpdateAgent!Mission03 = TxtMission03.Text
        UpdateAgent!Mission = TxtMission.Text
     
        UpdateAgent.Update
     
    End Sub
    Merci pour votre disponibilité!

  2. #2
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 351
    Par défaut
    tu ne peux pas faire un update avec un record set ouvert en :

    adOpenStatic, adLockOptimistic

    essaye avec :

    adOpenDynamic, adLockOptimistic

    enléve aussi le premier update qui ne sert à rien tant que tu n'a pas fait de modifications.

    personnellement j'utilise de ' plutôt que des " pour encadrer les chaines des caractères dans les requetes du genre :
    "SELECT * FROM IDplomat WHERE N° = ' " & TxtSearchMatri.Text & " ' "

  3. #3
    Membre confirmé Avatar de muzele
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 144
    Par défaut
    Merci Pascal, j'ai pu trouver la solution, voici mon code
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    Private Sub Command1_Click()
    If Trim$(CmbAY) >= Trim$(CmbDeY) Then
     
    'r'    CmdEnreg.Enabled = False
     
        Set UpdateAgent = New ADODB.Recordset
     
        UpdateAgent.Open "IDplomat", Cnx, adOpenDynamic, adLockOptimistic
     
    'r' On Error GoTo erreur
        UpdateAgent.Find "N°=" & "'" & TxtSearchMatri.Text & "'"
     
     
     
    '    UpdateAgent.Open "SELECT * FROM IDplomat WHERE N° = """ & Val(TxtSearchMatri.Text) & """  "
        ', Cnx, adOpenStatic, adLockOptimistic
        'UpdateAgent.Open "SELECT *
     
        UpdateAgent.Update
     
     
        UpdateAgent!NomDip = TxtNom.Text
        UpdateAgent!PostNomDip = TxtPostNom.Text
        UpdateAgent!PrenomDip = TxtPrenom.Text
        UpdateAgent!QualiteDip = TxtQualite.Text
        UpdateAgent!Etablissement = TxtEtablissement.Text
        UpdateAgent!DureeSejourRDC = TxtDureeSejour.Text
        UpdateAgent!AdresseRDC = TxtAdresseRDC.Text
        UpdateAgent!AdresseMail = TxtCourriel.Text
        UpdateAgent!TelDip = TxtPhone.Text
        UpdateAgent!Validite = LblValidite.Caption
        UpdateAgent!Mission01 = TxtMission01.Text
        UpdateAgent!Mission02 = TxtMission02.Text
        UpdateAgent!Mission03 = TxtMission03.Text
        UpdateAgent!Mission = TxtMission.Text
    'r'    SaveAgent!Matricule = TxtMatricule.Text
     
     
        UpdateAgent.Update
     
    'r'    SavePicture Image1.Picture, App.Path & "\images\face\" & Trim$(TxtMatricule) & ".jpg"
    'r'    SavePicture Image2.Picture, App.Path & "\images\finger\" & Trim$(TxtMatricule) & ".jpg"
    'r'    SavePicture Image3.Picture, App.Path & "\images\doc\" & Trim$(TxtMatricule) & ".jpg"
     
        CmdImprimer.Enabled = True
    'r'    CmdNew.Enabled = False
     
    MsgBox "Mise à jour effectuée avec succès!", vbOKOnly + vbInformation, "Enregistrement"
     
    Else
    MsgBox "Validité incorrect!", vbCritical, "Attention"
    CmbAY.SetFocus
    End If
     
    End Sub
    Merci à toute l'équipe de developpez! Ce forum nous est toujours important et ne cesse de grandir après autant d'années!

  4. #4
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 130
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    '    UpdateAgent.Open "SELECT * FROM IDplomat WHERE N° = """ & Val(TxtSearchMatri.Text) & """  "
        ', Cnx, adOpenStatic, adLockOptimistic
        'UpdateAgent.Open "SELECT *
     
        UpdateAgent.Update
     
     
        UpdateAgent!NomDip = TxtNom.Text
    ce UpdateAgent.Update n'est pas utile à cet endroit, voir nuisible pour un collègues qui retravaillerait ton code.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  5. #5
    Membre confirmé Avatar de muzele
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 144
    Par défaut
    Salut ProgElectT,
    Ca fait un sacré bout de temps que je ne t'ai pas lu!
    Merci!
    Je supprime la ligne et clique sur résolu!
    Encore merci à tous!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 04/07/2012, 23h54
  2. [Oracle] Mise à jour d'un enregistrement avec un formulaire HTML et PHP
    Par Nyko17 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 31/10/2008, 18h06
  3. Mise à jour dans un formulaire avec condition
    Par Bourni dans le forum Access
    Réponses: 4
    Dernier message: 06/03/2006, 22h13
  4. Proplème de mise à jour d'un recordset par ADO
    Par maniani dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 23/01/2006, 19h14
  5. Mise à jour d'une table avec un fichier csv
    Par blackangel dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 26/05/2005, 14h46

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