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

  1. #1
    Membre du Club
    Profil pro
    Retraité
    Inscrit en
    décembre 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : décembre 2007
    Messages : 69
    Points : 48
    Points
    48
    Par défaut [PostgreSQL] Exception et messages d'erreur de base de données
    Bonne année et bonne santé à toutes et à tous.
    Merci à toutes celles et tous ceux qui partagent leurs connaissances sur ce forum.
    Je vais vous mettre à contribution une nouvelle fois.
    J'ai à peu près terminé la logique d'interrogation, d'insertion et de modification de la base de données (Windows 10; Lazarus 2.0.6; postgresql 11.5). Maintenant j'aimerais sécuriser tous les contacts avec cette base. J'ai donc, dans un premier temps, utilisé dans un try... except
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    on E: Exception do
            if E is EDatabaseError then
              MessageDlg('Error','Erreur Base de Données. Message technique: ' + E.Message,mtError,[mbOK],0);
    Le message est correct mais un peu touffu. J'aimerais le mettre à ma sauce pour le rendre plus direct et plus percutant en partant du code d'erreur renvoyé par la base de données, par exemple 23505 pour la violation d'unicité. J'ai donc essayé d'utilisé EPQDataBaseError dans un try... except
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    on E: Exception do
            if E is EPQDatabaseError then
              Showmessage((E as EPQDatabaseError).SQLSTATE);
    et là boum Error: Identifier not found "EPQDatabaseError". Je ne sais pas dans quelle unité se trouve cet identifiant et si ce que j'essaye de faire est possible.
    Merci d'avance pour votre aide, Michel.

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    mars 2005
    Messages
    3 393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : mars 2005
    Messages : 3 393
    Points : 9 964
    Points
    9 964
    Billets dans le blog
    6
    Par défaut
    Bonjour et bonne année,
    Dans mon CodeTyphon, l'exception est déclarée dans l'unité PQConnection. Il faudra sûrement l'ajouter en uses, mais si tu utilises un autre connecteur, il y a peu de chances qu'elle soit déclenchée.
    Delphi 5 Pro - Delphi 10.3.2 Rio Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Membre du Club
    Profil pro
    Retraité
    Inscrit en
    décembre 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : décembre 2007
    Messages : 69
    Points : 48
    Points
    48
    Par défaut
    Merci tourlourou.
    En fait, utilisant ZeosLib, je vais essayer avec EZDataBaseError et je reviens au rapport.
    Michel.

Discussions similaires

  1. Message d'erreur sur base de données
    Par f5jcg_Lulu dans le forum Bases de données
    Réponses: 31
    Dernier message: 14/06/2019, 18h41
  2. [1.x] Traduction message d'erreur de base symfony
    Par Darkcristal dans le forum Symfony
    Réponses: 1
    Dernier message: 13/12/2011, 21h12
  3. [AC-2003] Message d'erreur fermeture base
    Par lucas-18 dans le forum IHM
    Réponses: 6
    Dernier message: 09/12/2009, 16h55
  4. "try...except" sans message d'erreur
    Par SchpatziBreizh dans le forum Langage
    Réponses: 4
    Dernier message: 12/07/2005, 10h50
  5. Réponses: 2
    Dernier message: 19/06/2003, 22h58

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