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

Sécurité Discussion :

MaJ d'une table impossible "lecture seule"


Sujet :

Sécurité

  1. #1
    Membre régulier
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Points : 89
    Points
    89
    Par défaut MaJ d'une table impossible "lecture seule"
    Bonjour tout le monde !

    Voilà, j'ai un formulaire qui doit normalement permettre de mettre à jour des données dans une table de ma base Access, mais seulement voilà, j'ai le message suivant lorsque je clic sur le bouton de mon formulaire pour mettre à jour :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Erreur d'exécution '3027' Mise à jour impossible. La base de données ou l'objet est en lecture seule
    Pourtant j'ai déjà réussi avec une autre méthode de mettre à jour ma table (mais j'avais un autre message d'erreur...)

    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
     
     ssRequete = "SELECT [idMagasin], [dateSortieMag] FROM [ReqJohann] WHERE [IdAfilliéGROUPEMENT] = '" & [Texte94] & "'"
     
    'ssRequete = "SELECT idMagasin, DateSortieMag, IdAfilliéGROUPEMENT FROM PB_Affiliés INNER JOIN [PB-Magasins] ON PB_Affiliés.Numéro = [PB-Magasins].Affilié WHERE (((PB_Affiliés.IdAfilliéGROUPEMENT)='" & [Texte94] & "'))"
     
     
             Set maBase = CurrentDb
             Set monRecordset = maBase.OpenRecordset(ssRequete)
     
     
                  With monRecordset
                 .MoveLast ' Remplit l'objet Recordset.
                 .MoveFirst
     
                     Do While Not .EOF 'puis parcours les enregistrement
     
                          monRecordset.Edit
                          monRecordset![dateSortieMag] = [Date de sortie]
                          monRecordset.Update
                         .MoveNext
                     Loop
     
             End With
    Si quelqu'un voit d'où cela peut venir car là je suis tout perdu dans un océan d'incompréhension le plus total.

    Merci d'avance et bonne fin de semaine.

  2. #2
    Membre éprouvé Avatar de jean-paul lepetit
    Inscrit en
    Février 2005
    Messages
    842
    Détails du profil
    Informations personnelles :
    Âge : 68

    Informations forums :
    Inscription : Février 2005
    Messages : 842
    Points : 919
    Points
    919
    Par défaut
    Salut,

    Il me semble qu'on ne peut pas faire de mise à jour sur un recordset qui est issu d'une requête sur plusieurs table....
    Ils ne savaient pas que c'était impossible, alors il le réalisèrent (Mark Twain)

  3. #3
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    si je ne me trompe:
    tu as ouvert une table par le formulaire
    tu fais des modifications dessus
    tu veux enregistrer ces modifications par recordset
    t'as un erreur à ce moment

    cela vient surement du fait que lorsque tu édites dans ton formulaire la table est vérrouillé, le temps de faire les modications, hors a ce moment toi tu la réouvre une seconde fois par recordset pour y inscrire des données mais tu oublie que la table est déjà verrouillée en modif pour le form.

    met plutot:
    [dateSortieMag] = [Date de sortie]
    dans un événement du form genre 'Avant MAJ'
    pour sauvegarder l'enregistrement (ton bouton)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.RunCommand acCmdSaveRecord

  4. #4
    Membre régulier
    Inscrit en
    Juin 2005
    Messages
    243
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 243
    Points : 89
    Points
    89
    Par défaut
    Bonjour et merci de vos réponses.

    J'ai trouvé une autre méthode finalement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     DoCmd.RunSQL "UPDATE [PB-Magasins] set [dateSortieMag] = '" & [Date de sortie] & "' where idMagasin = '" & resu & "'"
    Bonne fin de journée.

Discussions similaires

  1. Réponses: 9
    Dernier message: 29/07/2015, 17h54
  2. [MySQL] Lecture d'une table impossible
    Par alvanoto dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 25/07/2010, 01h00
  3. Attacher une table DBF en lecture seule
    Par ludooo dans le forum Access
    Réponses: 2
    Dernier message: 23/11/2007, 14h42
  4. Attacher une table DBF en lecture seule
    Par ludooo dans le forum VBA Access
    Réponses: 1
    Dernier message: 21/11/2007, 15h08

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