La bibliothèque libecpg contient principalement des fonctions « cachées » utilisées pour coder les fonctionnalités exprimées par les commandes SQL embarquées. Mais il existe quelques fonctions qu'il peut être utile d'appeler directement. Cela a toutefois des conséquences sur la portabilité du code.
ECPGdebug(int on , , FILE * flux ) active le débogage si elle est appelée avec une valeur différente de zéro pour le premier argument. Les traces de débogage sont envoyées sur le flux . Les traces contiennent toutes les instructions SQL avec toutes les variables en entrée et les résultats du serveur PostgreSQL™. Cela peut être très utile pour rechercher des erreurs dans les instructions SQL.
Sur Windows, si les bibliothèques ecpg et une application sont compilées avec des options différentes, cet appel de fonction arrête brutalement l'application car la représentation interne des pointeurs FILE diffère. En particulier, les options multi-threaded/single-threaded, release/debug et static/dynamic doivent être identiques pour la bibliothèque et pour toutes les applications qui utilisent cette bibliothèque.
ECPGstatus(int no_ligne , , const char* nom_connexion ) retourne vrai si une connexion à une base de données est active, faux sinon. nom_connexion peut être NULL si une seule connexion est utilisée.