Bonjour, Je viens de migrer un serveur postgres 9.1 vers 9.4. J’utilise PEAR sous php 5.6 pour communiquer avec la base.
Dans PEAR, il y a une classe qui permet de récupérer les erreurs et messages issus de la BDD (ou autre), qui possède une fonction getcode() (cf
http://pear.php.net/manual/fr/core.pear.pear-error.getcode.php) qui récupère le SQLCODE que renvoie postgres. Sous postgres 9.1, lorsqu’un INSERT échoue pour cause de clé dupliquée,
le SQLCODE est -3 alors que sous postgres 9.4, cela renvoie -1, et la gestion de nos erreurs dans nos applis php est par conséquent fortement perturbée. J’ai cherché sur la documentation postgres et je ne vois rien qui fait référence au SQLCODE. Il y a bien des codes SQLSTATE mais aucun ne correspond à celui que je récupère. Est-ce quelqu’un pourrait m’en dire
plus sur ces SQLCODE qui visiblement ont été modifiés entre les 2 versions ? est-ce qu’il y a moyen de les modifier (sans recompiler) ou de les afficher via une requête ? Merci pour votre aide Cordialement, Anthony |