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

Requêtes et SQL. Discussion :

Proplème de mise à jour d'un recordset par ADO


Sujet :

Requêtes et SQL.

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2004
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 14
    Points : 5
    Points
    5
    Par défaut Proplème de mise à jour d'un recordset par ADO
    J'arrive pas à mettre à jours un enregistrement à travers ADO
    Je veux mettre à jours le champ NRRE de la table t/non-conformite quand un élémént n'est pas enrgistréé dans la table.
    le test de l'element s'effectue par :le formulaire f/reclamation et le sous-formulaire t/nre
    voila le 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
    Dim cnn As ADODB.Connection
    Set cnn = CurrentProject.Connection
    Dim rst As New ADODB.Recordset
    rst.Open "SELECT [t/non-conformite].nrre  FROM [T/NON-CONFORMITE]", cnn, adOpenKeyset, adLockBatchOptimistic
    rst.Filter = "nrre='" & Forms![F/RECLAMATION-MAJ]![T/NRE sous-formulaire].Form![NRE] & "'"
    If rst.RecordCount = 0 Then
    MsgBox "l'element n'est pas enregisté "
    rst.AddNew
    rst!NRRE = "444444m01"
    rst.Update
    rst.Close
    Else
    MsgBox "élémént  existe"
    end if
    merci

    modération : cafeine,

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 161
    Points : 128
    Points
    128
    Par défaut
    Essaye avec ca

    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
     
    Dim SQL as string
     
    ...
     
     
    If rst.RecordCount = 0 Then 
    MsgBox "l'element n'est pas enregisté " 
    SQL="INSERT INTO [t/non-conformite](nrre) values ('"444444m01"')" 
    cnn.execute(SQL)
     
    Else 
    MsgBox "élémént  existe" 
    end if
     
    cnn.close
    set cnn=nothing

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2004
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 14
    Points : 5
    Points
    5
    Par défaut
    merci
    mais je désire savoir pourquoi ce code ne marche pas
    j'ai essayé avec DAO et ça marche trés bien
    je vais essayé ton code

    merci encore une autre fois

  4. #4
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 136
    Points : 163
    Points
    163
    Par défaut
    bonjour,

    j'ai eu le même pb il y a quelques semaines, qui fut resolu en 1/2 sec par un des pros du forum

    il faut changer le type de verrouillage du recordset:

    rst.Open "SELECT [t/non-conformite].nrre FROM [T/NON-CONFORMITE]", cnn, adOpenKeyset, adLockBatchOptimistic
    adLockBatchOptimistic est la première option proposée quand tu tapes ton code mais pas celle souhaitée forcément et c'est le côté batch qui pose pb puisque suppose un traitement en file d'attente.

Discussions similaires

  1. Réponses: 3
    Dernier message: 17/01/2007, 09h33
  2. Mise à jour d'une balise par innerHTML qui pose pb !!
    Par nerik38 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/01/2006, 16h13
  3. Réponses: 2
    Dernier message: 23/12/2005, 22h32
  4. [vb][ado][mysql] mise à jour d'un recordset
    Par hi_vivie dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 14/12/2005, 16h34
  5. mise à jour d'une liste par un popup
    Par Equus dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 25/02/2005, 11h21

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