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

VB 6 et antérieur Discussion :

Récupération message d'erreur lors d'une insertion dans une BDD


Sujet :

VB 6 et antérieur

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2007
    Messages : 180
    Points : 198
    Points
    198
    Par défaut Récupération message d'erreur lors d'une insertion dans une BDD
    Bonjour à tous,

    le titre est, je l'espère, assez explicite.

    Je développe un bibliothèque en VB qui se connecte sur une base pour insérer ou mettre à jour des données.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public Function BLABLA (3 paramètres...) As Integer
     
    Dim dbcmd ADODB.Command
     
    BLABLA
    dbcmd.Text = insert ... ... ...
    dbcmd.Execute (Resultat)
    La variable Resultat me donne le nombre d'enregistrement affecté.

    Je voudrais que dans le cas d'une erreur sur l'insert, récupérer cette information pour la remonter à l'utilisateur.
    Pour mon cas, j'ai 3 colonnes (compteur, libelle, ID). L'ID doit être unique, mais peut être modifié par l'utilisateur. Par contre, s'il existe déjà, l'insertion ne fonctionne pas. L'information n'est pas remontée à l'utilisateur, car non récupérée.

    Si qqun a une solution.

    Merci
    Une légende amérindienne raconte qu'il y eut un immense incendie de forêt. Tous les animaux terrifiés et atterrés observaient, impuissants, le désastre. Seul, un colibri s'activait et allait chercher quelques gouttes d'eau dans son bec pour éteindre le feu.
    Au bout d'un moment, le tatou, agacé par ses agissements dérisoires, lui dit :
    'Colibri ! N'es-tu pas fou ? Tu crois que c'est avec ces gouttes d'eau que tu vas éteindre le feu ?
    'Je le sais, répond le colibri, mais je fais ma part...

  2. #2
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    si conn est ta connexion (car je ne sais pas):

    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
    Public Function BLABLA (3 paramètres...) As Integer
     
    Dim dbcmd ADODB.Command
    On Error Goto ErrorHandler
     
    BLABLA
    dbcmd.Text = insert ... ... ...
    dbcmd.Execute (Resultat)
     
    ErrorHandler:
        With conn
            If .Errors.Count > 0 Then
                For i = 0 To .Errors.Count - 1
                    MsgBox .Errors(i).Number & " : " & .Errors(i).Description
                Next
            End If
        End With
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  3. #3
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    L'erreur doit remonter dans la collection Errors de la connexion

  4. #4
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Citation Envoyé par bidou Voir le message
    L'erreur doit remonter dans la collection Errors de la connexion
    ben c'est ce que j'ai écrit, non ?
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  5. #5
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    oui, mais j'avais pas vu que tu avais répondu

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Août 2007
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Août 2007
    Messages : 180
    Points : 198
    Points
    198
    Par défaut
    Merci, je vais tester ça.
    Une légende amérindienne raconte qu'il y eut un immense incendie de forêt. Tous les animaux terrifiés et atterrés observaient, impuissants, le désastre. Seul, un colibri s'activait et allait chercher quelques gouttes d'eau dans son bec pour éteindre le feu.
    Au bout d'un moment, le tatou, agacé par ses agissements dérisoires, lui dit :
    'Colibri ! N'es-tu pas fou ? Tu crois que c'est avec ces gouttes d'eau que tu vas éteindre le feu ?
    'Je le sais, répond le colibri, mais je fais ma part...

  7. #7
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Citation Envoyé par bidou Voir le message
    oui, mais j'avais pas vu que tu avais répondu
    pô grave

    Dis puisque tu es là et qu'on en cause, y'a aussi la solution char d'assaut qui consiste à écrire un gestionnaire d'évènement, puisque une ADOcommand provoque un ev ExecuteComplete, normalement, et avec un retour d'erreur
    Tu as déjà fait ça pour ADO ?
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  8. #8
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    oui j'ai déjà pratiqué la chose, mais c'est une gestion asnchrone et c'est une approche un peu différente

  9. #9
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut
    c'est curieux cela doit dépendre du sgbd car mon oracle m'explose à la tronche en remontant tout bien comme il faut les erreurs quand il y en a

  10. #10
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    Normal, ton Oracle, il est pas devin !

    Pardon

    Plus sérieusement, la discussion est intéressante, tu peux en dire plus ?
    Vous vous posez une question, la réponse est peut-être ici :
    Toutes les FAQs VB
    Les Cours et Tutoriels VB6/VBScript
    Les Sources VB6


    Je ne réponds pas aux questions techniques par MP. Utilisez les forums. Merci de votre compréhension

  11. #11
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    En même temps Oracle, c'est si ça pétait pas que ce serait surprenant

    C'est oracle ou l'appli VB qui pête ?

  12. #12
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut
    euh dans mon cas on parle bien d'une erreur ORA-XXXXX (ou PLS-XXXX)

    J'utilise une procédure stockée par exemple, avec l'objet adodb.command, et au moment du "command.Execute , , adExecuteNoRecords" en cas d'erreur elle est remontée directement.

    Je ne préfère par contre pas m'avancer sur les erreurs lors d'exécution de commandes sql conventionnelles (requêtes simples) car nous avons également un gestionnaire de connexion ado qui gère les erreurs remontées par oracle donc je ne suis plus sûr.

Discussions similaires

  1. [MySQL] Erreur lors de l'insertion d'une image dans un tableau
    Par bigwade dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 16/05/2013, 15h24
  2. Erreur lors d'un INSERT sur une table dans Firebird via dbExpress
    Par matou7 dans le forum Bases de données
    Réponses: 4
    Dernier message: 03/04/2012, 16h40
  3. Erreur lors de l'insert dans une BDD MySQL
    Par gagaz21 dans le forum C#
    Réponses: 4
    Dernier message: 16/07/2011, 00h10
  4. Réponses: 15
    Dernier message: 02/06/2010, 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