libpq

libpq es la interfaz para los programadores de aplicaciones en C para PostgreSQL. libpq es un conjunto de rutinas de biblioteca que permiten a los programas cliente trasladar consultas al servidor de Postgres y recibir el resultado de esas consultas. libpq es tambi�n el mecanismo subyacente para muchas otras interfaces de aplicaciones de PostgreSQL, incluyendo libpq++ (C++), libpgtcl (Tcl), Perl, y ecpg. Algunos aspectos del comportamiento de libpq le resultar�n de importancia si quiere utilizar uno de estos paquetes.

Se incluyen tres programas cortos al final de esta secci�n para mostrarle como escribir programas que utilicen libpq. Hay varios ejemplos completos de aplicaciones con libpq en los siguientes directorios:

../src/test/regress
../src/test/examples
../src/bin/psql
   

Los programas cliente que utilicen libpq deber�n incluir el fichero de cabeceras libpq-fe.h, y deber�n enlazarse con la biblioteca libpq.

Funciones de Conexi�n a la Base de Datos

Las siguientes rutinas le permitir�n realzar una conexi�n al servidor de Postgres. El programa de aplicaci�n puede tener abiertas varias conexiones a servidores al mismo tiempo. (Una raz�n para hacer esto es acceder a m�s de una base de datos). Cada conexi�n se representa por un objeto PGconn que se obtiene de PQconnectdb () o PQsetdbLogin (). N�tese que estas funciones siempre devolver�n un puntero a un objeto no nulo, a menos que se tenga demasiada poca memoria incluso para crear el objeto PGconn. Se deber�a llamar a la funci�n PQstatus para comprobar si la conexi�n se ha realizado con �xito antes de enviar consultas a traves del objeto de conexi�n.

Los programadores de aplicaciones con libpq deber�an ser cuidadosos de mantener la abstracci�n de PGconn. Utilice las funciones siguientes para tomar el contenido de PGconn. Prohiba las referencias directas a los campos de la estructura PGconn, ya que est�n sujetas a cambios en el futuro. (A partir de PostgreSQL 6.4, la definici�n de la estructura PGconn incluso ya no se proporciona en libpq-fe.h. Si tiene usted viejas aplicaciones que acceden a campos de PGconn directamente, puede usted conservarlas utilizando para incluirla libpq-int.h tambi�n, pero le recomendamos encarecidamente que fije pronto el c�digo).