Utiliser UPDATE Access

Résolu
GDX Messages postés 239 Statut Membre -  
GDX Messages postés 239 Statut Membre -
Bonjour,

Je cherche à modifier des données sur ma table.

Jusqu'à présent je ne faisais que les lire et j'utilisais, pour cela, les Recordset.

maintenant, je veux utiliser une commande SQL du type "UPDATE maTable SET ..." pour modifier les champs de ma table.

Quelle type d'objet dois-je utiliser ?

Car les Recordset ne sont plus addapter pour l'écriture.
Je ne peux pas écrire : set monRecordset = CurrentDb.OpenRecordset("UPDATE maTable SET ...")

Merci,

2 réponses

  1. blux Messages postés 2049 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Salut,

    tu peux continuer d'utiliser les recordsets (type table, avec mise à jour).
    Dans ton vb, tu diras simplement (une fois que tu auras sélectionné le bon enregistrement, bien sûr) :

    with rs     
     !nom_du_champ = ma_valeur     
     !update     
    end with

    Un autre possibilité, si tu fais des mises à jour de masse, est de créer ta requête en tant que variable de type string, et de faire un :

    docmd.runsql(la_variable_qui_contient_le_texte_de_la_requete)   
    

    A+ blux
     "Les cons, ça ose tout.     
    C'est même à ça qu'on les reconnait"
    1
  2. GDX Messages postés 239 Statut Membre 9
     
    Oui c'est ce que j'ai fait pour finir,

    voici mon code

    set monRecordset = CurrentDb.OpenRecordset("SELECT * FROM...")
    
    monRecordset.Edit
    monRecordset("Champ1") = "TOTO"
    monRecordset.update


    Mais j'ai lu sur le net qu'il vallait mieux réserver les Recordset pour la lecure.

    Est-ce qu'il existe une façon plus académique de modifier les table.

    Merci,
    0
    1. blux Messages postés 2049 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Comme je l'ai dit : docmd.runsql()...
      0
    2. GDX Messages postés 239 Statut Membre 9
       
      OK, j'avais lu que la 1er partie du msg.

      Merci
      0