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

PHP & Base de données Discussion :

Catcher un raise exception [PDO]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Catcher un raise exception
    Bonjour,
    j'ai un trigger plpgsql qui fonctionne correctement mais je n'arrive pas à récupérer les messages 'raise exception' quand ils se produisent.
    En effet quand je lance l'execution de ma requete dans un try catch il n'y a jamais d'exceptions générées.
    Hors quand je fais la meme requete en mode console la je vois bien mes messages d'exception...
    Si vous avez une idées je suis preneur.
    Merci d'avance

  2. #2
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    L'exception levée au niveau de PG est bien traduite en une PDOException coté PHP ou c'est tout simplement une erreur qui est lancée ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Je ne suis pas sur d'avoir bien compris ta question mais quand ma requete se lance dans mon try catch (php) elle entraine le declenchement de mon trigger mais ne genere pas d'exception alors que cette même requete dans pgadmin m'affiche mon message d'erreur lié au raise exception de ma procedure trigger pgsql.
    Donc je me demandais s'il était possible de recupérer ce message d'erreur car visiblement il n'y a pas d'exception levée au niveau de php...

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Solution
    J'ai trouvé la solution... dans le manuel
    http://php.net/manual/fr/pdo.error-handling.php

    j'étais dans le mode par defaut PDO::ERRMODE_SILENT
    Avec le mode PDO::ERRMODE_EXCEPTION les messages de mes Raise exception de mon trigger sont à présent visible.

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

Discussions similaires

  1. Comment catcher dynamiquement une exception à la demande?
    Par jlassiramzy dans le forum Langage
    Réponses: 5
    Dernier message: 06/04/2011, 11h29
  2. Réponses: 13
    Dernier message: 27/04/2009, 17h37
  3. pb :RAISE EXCEPTION
    Par Nimothenicefish dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 12/06/2008, 17h59
  4. Raise Exception avec mysql ?
    Par pop_up dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 27/08/2007, 09h11
  5. [Exception] Comment catcher une runtime exception ?
    Par bulbo dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 16/06/2005, 10h46

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