Funciones Asociadas con el Comando COPY

El comando COPY en PostgreSQL tiene opciones para leer o escribir en la conexi�n de red utilizada para libpq. Por ello, se necesitan funciones para acceder a su conexi�n de red directamente, de forma que las aplicaciones puedan obtener ventajas de esta capacidad.

Estas funciones s�lo se deber�an utilizar tras obtener un objeto resultado PGRES_COPY_OUT o PGRES_COPY_IN a partir de PQexec o PQgetResult.

Cuando se est� utilizando PQgetResult, la aplicaci�n deber�a responder a un resultado PGRES_COPY_OUT ejecutando repetidamente PQgetline, seguido de PQendcopy una vez se detecta la l�nea de terminaci�n. Deber�a entonces volver al bucle PQgetResult loop until hasta que PQgetResult devuelva NULL. Similarmente, un resultado PGRES_COPY_IN se procesa por una serie de llamadas a PQputline seguidas por PQendcopy, y volviendo entonces al bucle PQgetResult. Esta organizaci�n asegurar� que un comando de copia de entrada o de salida embebido en una serie de comandos SQL se ejecutar� correctamente.

Las aplicaciones antiguas habitualmente emiten una copia de entrada o de salida a trav�s de PQexec y asumen que la transacci�n ha terminado tras el PQendcopy. Este mecanismo trabajar� adecuadamente s�lo si la copia de entrada/salida es el �nico comando SQL de la cadena de consulta.