

Ces fonctions contrôlent divers détails du comportement de libpq.
PQclientEncoding
     
    Renvoie l'encodage client.
      int PQclientEncoding(const PGconn *conn);
      
      Notez qu'il renvoie l'ID de l'encodage, pas une chaîne symbolique
      telle que EUC_JP. Renvoie -1 en cas d'échec. Pour
      convertir un ID d'encodage en nom, vous pouvez utiliser :
      
       char *pg_encoding_to_char(int encoding_id);
      
PQsetClientEncoding
     
    Configure l'encodage client.
      int PQsetClientEncoding(PGconn *conn, const char *encoding);
      
      conn est la connexion au serveur, et
      encoding est l'encodage que vous voulez
      utiliser. Si la fonction initialise l'encodage avec succès, elle
      renvoie 0, sinon -1. L'encodage en cours pour cette connexion peut être
      déterminé en utilisant PQclientEncoding.
     
PQsetErrorVerbosity
      Détermine la verbosité des messages renvoyés par
      PQerrorMessage et PQresultErrorMessage.
      
typedef enum
       {
           PQERRORS_TERSE,
           PQERRORS_DEFAULT,
           PQERRORS_VERBOSE
       } PGVerbosity;
       PGVerbosity PQsetErrorVerbosity(PGconn *conn, PGVerbosity verbosity);
      
      PQsetErrorVerbosity initialise le mode de verbosité, renvoyant le
      paramétrage précédant de cette connexion. Dans le mode
      TERSE, les
      messages renvoyés incluent seulement la sévérité, le texte principal et la
      position ; ceci tiendra normalement sur une seule ligne. Le mode par
      défaut produit des messages qui incluent ces champs ainsi que les champs détail,
      astuce ou contexte (ils pourraient être sur plusieurs lignes). Le mode
      VERBOSE inclut tous les champs disponibles. Modifier la verbosité
      n'affecte pas les messages disponibles à partir d'objets
      PGresult déjà existants, seulement ceux créés après.
      (Mais voyez PQresultVerboseErrorMessage si vous voulez
      afficher une erreur précédente avec une verbosité différente).
     
PQsetErrorContextVisibility
     
    
      Détermine la gestion des champs CONTEXT dans les
      messages renvoyées par PQerrorMessage et
      PQresultErrorMessage.
      
typedef enum
{
    PQSHOW_CONTEXT_NEVER,
    PQSHOW_CONTEXT_ERRORS,
    PQSHOW_CONTEXT_ALWAYS
} PGContextVisibility;
PGContextVisibility PQsetErrorContextVisibility(PGconn *conn, PGContextVisibility show_context);
      
      PQsetErrorContextVisibility configure le mode
      d'affichage du contexte, renvoyant la précédente configuration de la
      connexion. Ce mode contrôle si le champ CONTEXT est
      inclus dans les messages (sauf si la verbosité est configurée à
      TERSE, auquel cas CONTEXT n'est
      jamais affiché). Le mode NEVER n'inclut jamais
      CONTEXT, alors que ALWAYS l'inclut
      en permanence s'il est disponible. Dans le mode par défaut,
      ERRORS, les champs CONTEXT sont
      inclus seulement pour les messages d'erreur, et non pas pour les messages
      d'informations et d'avertissements. La modification de ce mode n'affecte
      pas les messages disponibles à partir des objets
      PGresult déjà existants, seulement ceux créés
      après. (Cependant, voyez PQresultVerboseErrorMessage
      si vous voulez afficher une erreur précédente avec un mode d'affichage
      différent.)
     
PQtraceActive la trace de la communication entre client et serveur vers un fichier de débogage.
void PQtrace(PGconn *conn, FILE *stream);
      
       Sur Windows, si la bibliothèque libpq et une application sont
       compilées avec des options différentes, cet appel de fonction fera
       planter l'application car la représentation interne des pointeurs
       FILE diffère. Spécifiquement, les options multi-threaded/single-threaded
       release/debug et static/dynamic devraient être identiques pour la bibliothèque et les
       applications qui l'utilisent.
      
PQuntrace
      Désactive les traces commencées avec PQtrace.
      
void PQuntrace(PGconn *conn);