Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/01/2012, 15h27   #1
Invité de passage
 
Inscription : janvier 2012
Messages : 4
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 4
Points : 0
Points : 0
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
Stephane84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2012, 11h17   #2
Membre Expert
 
Avatar de nico84
 
Homme Nicolas Guimbal
Consultant/développeur ERP
Inscription : mai 2008
Messages : 1 258
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Guimbal
Âge : 49
Localisation : France

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

Informations forums :
Inscription : mai 2008
Messages : 1 258
Points : 1 877
Points : 1 877
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...
nico84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/01/2012, 11h30   #3
Invité de passage
 
Inscription : janvier 2012
Messages : 4
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 4
Points : 0
Points : 0
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...
Stephane84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 10h20   #4
Membre Expert
 
Avatar de nico84
 
Homme Nicolas Guimbal
Consultant/développeur ERP
Inscription : mai 2008
Messages : 1 258
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Guimbal
Âge : 49
Localisation : France

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

Informations forums :
Inscription : mai 2008
Messages : 1 258
Points : 1 877
Points : 1 877
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
nico84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 12h01   #5
Invité de passage
 
Inscription : janvier 2012
Messages : 4
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 4
Points : 0
Points : 0
Pas de problème, merci de t'être penché sur le sujet en tout cas !
Stephane84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 18h43   #6
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
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+
__________________
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.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2012, 18h53   #7
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
J'ai trouvé aussi cela http://msdn.microsoft.com/en-us/libr...ffice.12).aspx

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.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2012, 14h55   #8
Invité de passage
 
Inscription : janvier 2012
Messages : 4
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 4
Points : 0
Points : 0
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 !
Stephane84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2012, 18h29   #9
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
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+
__________________
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.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h15.


 
 
 
 
Partenaires

Hébergement Web