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 :

Erreur Insertion sur table liée via ODBC


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Erreur Insertion sur table liée via ODBC
    Bonjour à tous,

    J'ai un soucis sur l'utilisation dans Access 2003 d'une table issue d'une base de données Oracle 10g, le tout via ODBC.
    J'ai une erreur 3155 lors de l'insertion "Echec d'insertion sur une table <Nom de la table> attachée". Le fait qu'il y ait une erreur est tout à fait normal car je l'ai moi même provoquée en saisissant des valeurs erronées.
    Mon problème vient du fait qu'Access ne diffuse pas l'erreur renvoyée par Oracle (dans mon cas Access aurait dû dire 'Client TOTO inconnu', erreur envoyé par le trigger de ma table Oracle) mais diffuse à la place l'erreur "Echec d'insertion sur une table <Nom de la table> attachée".

    Comment puis-je faire afficher dans Access l'erreur envoyée par Oracle ? J'ai regardé sur Internet, dans les propriétés de mon lien ODBC, je n'ai rien trouvé.

    Merci de votre aide !

    Stéphane

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 108
    Points : 5 231
    Points
    5 231
    Par défaut
    Bonjour,

    En général je préfère tout controler avant de faire l'écriture sur la base ce qui m'évite ce type de problème. C'est un peu plus lourd mais bien plus fiable...

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci de votre réponse.

    En fait, je travaille sur une vue Oracle, à laquelle est associé un trigger. Ce qui permet de faire des SELECT, UPDATE, INSERT, DELETE sur la vue, mais c'est le trigger qui gère le traitement des données dans les différentes tables.

    Je raise donc des erreurs à l'intérieur de mon trigger. Et ce sont ces mêmes erreurs qui ne s'affichent pas lorsque j'utilise ma vue avec Access via ODBC...

  4. #4
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 108
    Points : 5 231
    Points
    5 231
    Par défaut
    En gros, j'avais compris...

    Comme je fais très peu d'écritures sur Oracle (base de l'erp d'un client) je suis très prudent et en cas d'échec je considère ça comme un bug que j'écris dans un journal pour le traiter moi-même. Le message envoyé à l'utilisateur est donc du type "contacter l'administrateur"

    Désolé de ne pas pouvoir t'aider

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Pas de problème, merci de t'être penché sur le sujet en tout cas !

  6. #6
    Modérateur

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    J'ai fais cela il y a longtemp donc les détails sont très flou mais il me semble que j'avais utilisé la collection Errors pour avoir des informations supplémentaires sur une erreur Oracle Générique.

    De ce que je me souviens quand on reçoit une erreur dans un programme, en réalité il peut y avoir plusieurs erreurs générées et stockées dans la collection Errors. Seule la 1ère est affichée mais les autres sont quand même disponibles.

    La seule référence que j'ai trouvé à ce propos de Errors est ici : http://technet.microsoft.com/en-us/l.../cc936710.aspx.

    Donc peut-être que le message d'erreur du trigger est dans les erreurs qui suivent l'erreur principale.

    A+

  7. #7
    Modérateur

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci de votre réponse Marot.
    Effectivement, je me suis douté que les erreurs remontées par le trigger devaient être stockées et accessible, mais cela ne semble pas être possible lors de l'édition directement dans la table liée (avec la grille). Toutefois, je pense comme vous qu'une application Access saurait accéder à l'intégralité des erreurs remontées.

    Merci de votre aide !

  9. #9
    Modérateur

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Directement non mais au travers d'un formulaire en mode feuille de données c'est peut-être possible en utilisant l'événement On Error.

    A+

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/04/2019, 07h38
  2. [AC-2002] Problème de perte de décimale sur table Oracle liée via ODBC
    Par prpa11 dans le forum Access
    Réponses: 2
    Dernier message: 26/05/2014, 18h03
  3. [AC-2007] table liée via ODBC
    Par sylv20 dans le forum VBA Access
    Réponses: 1
    Dernier message: 31/05/2011, 20h24
  4. [AC-2003] Erreur de données sur tables liées
    Par chants1707 dans le forum Access
    Réponses: 5
    Dernier message: 19/04/2011, 15h09
  5. Réponses: 2
    Dernier message: 15/07/2008, 09h00

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