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

Access Discussion :

Recordset not updateable avec table linkée [SQL-Serveur 2012] [AC-2010]


Sujet :

Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Webdesigner
    Inscrit en
    Avril 2017
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Avril 2017
    Messages : 19
    Points : 15
    Points
    15
    Par défaut Recordset not updateable avec table linkée [SQL-Serveur 2012]
    Bonjour,

    Je présente rapidement et simplement mon projet qui est un projet que j'ai repris d'une autre personne.

    Il s'agit d'une base de données où les tables sont côté SQL-Server 2012 et sont linké sur Access 2010 pour le côté interface.

    Mon problème est le suivant sur access certains formulaires en mode table où j'ai intégrés des combobox et checkbox ont leur contrôle complètement bloqués et j'obtiens systématiquement le message d'erreur " Recordset is not updateable ".

    Impossible de changer la valeur de ces contrôles même côté VBA.

    Après plusieurs heures de recherches j'ai pu apprendre que Access passait les requêtes en Read-only suivant certains critères mais même en évitant tout cela le problème persiste.

    Encore plus étrange j'ai testé d'utiliser un autre ordinateur du bureau où tout fonctionne correctement côté Access, j'en déduit que le soucis viens des table linké côté SQL-Server mais je suis vraiment à court d'imagination.

    Alors je sais que les causes de ce genre de problèmes peuvent être multiples mais après m'être arraché les cheveux sur le sujet je pense que si un cerveau " neuf " pouvait me donner de nouvelles pistes j'arriverais peut être à bout de ces fichus recordset

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour,

    On est un certain nombre à être à la recherche d'un cerveau "neuf"

    Pour info, Access, considère qu'un jeu d'enregistrement issu d'une requête est en lecture seule, principalement :

    • s'il y a un regroupement au niveau des champs de la requête.
    • S'il y a une liaison dans cette requête sur 2 champs qui ne sont pas des clés primaires.
    • Si c'est une requête union.



    Côté SQL serveur il y a des exemples de codes VBA disponible dans cet article :

    http://ledzeppii.developpez.com/odbc-access/

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    As-tu vérifié que tu avais bien toujours les droits d'écriture sur ta table en ouvrant la table directement sans passer par le formulaire ?
    Même chose avec la source de données de ton formulaire ?

    Sinon, j'ai une appli où si je fais un relink, je perds mes accès en écriture.
    Il a fallu que supprime la liaison puis que le la recrée.

    Aussi il est impératif que ta table source ait une clef primaire et que tu y ait accès (même si elle ne te sert à rien) sinon là aussi Access passe en mode lecture seule.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Webdesigner
    Inscrit en
    Avril 2017
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Avril 2017
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    Merci pour ces réponses j'ai déjà résolu la moitié du problème.

    Une partie du soucis venait des vues côté SQL-Server au moment de l'import des données sur mon pc j'ai minutieusement fouillé la cinquantaine de Vues et j'ai découvert que les index unique étaient passé à la trappe du coup cela explique pourquoi certains formulaires fonctionnaient sur d'autre PC et pas le miens .

    Néanmoins il reste quelque formulaires qui eux sont issu d'une requête simple et ne fonctionnent pas pourtant il n'y a aucune jointure ni regroupement, ni liaison je fais juste une requête select que je définis ensuite en recordsource côté VB

    La table source en revanche possède une clé primaire composite de 3 clé primaire pour garantir l'unicité mais je ne pense que ce soit la cause.
    J'ai vérifié aussi côté Access si j'avais les droits d'écriture sur la table et c'est le cas.
    Le seul moyen que j'ai trouvé pour modifier mes champs est d'enlever le controlsource de ma textbox du formulaire changer sa valeur faire une requête update sur ma table et remettre le controlsource ce qui n'est pas tellement normal comme manip je pense

  5. #5
    Membre à l'essai
    Homme Profil pro
    Webdesigner
    Inscrit en
    Avril 2017
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Avril 2017
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    Soucis résolu.

    Pour les derniers formulaires dissidents j'ai utilisé la manière forte à savoir supprimer le tout et refaire et tant qu'à y être j'ai drop&create les tables concernés et miracle ça marche, bon certes je ne saurais jamais la cause du blocage mais vu mon niveau d'agacement je dirais que ce n'est pas grave .

    Merci à marot et User en tout cas pour m'avoir donné quelques pistes

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

Discussions similaires

  1. [Toutes versions] Erreur sur update avec table SQL serveur
    Par tom@tom dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 07/06/2011, 20h39
  2. Recordset not updatable dans une requete ou dans un formulaire
    Par debdev dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 19/07/2006, 12h45
  3. Recreer les indexs de table dans SQL serveur 2000
    Par FilipeVV dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/03/2006, 15h30
  4. Réponses: 1
    Dernier message: 01/02/2006, 17h48
  5. UPDATE multi-tables sous SQL Server
    Par Cybernet dans le forum Langage SQL
    Réponses: 8
    Dernier message: 25/03/2004, 15h34

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