next up previous contents index
Next: La estructura PGresult Up: Pg Previous: Pg   Índice General   Índice de Materias

Métodos de Pg

Además de las dos maneras de interacción presentadas, estos son los métodos que proveé Pg y que nos permiten tener acceso a partes internas:

$dbname = $conn->db
Regresa el nombre de la base de datos.

$pguser = $conn->user
Regresa el nombre del usuario que hizo la conexión.

$pguser = $conn->pass
Regresa la contraseña de PostgreSQL utilizada en la conexión.

$pghost = $conn->host
Regresa el nombre canónico de la computadora a donde se hizo la conexión.

$pgport = $conn->port
Regresa el puerto por el que se hizo la conexión.

$pgtty = $conn->tty
Regresa la pseudo terminal por la que se hizo la conexión.

$pgoptions = $conn->options
Regresa las opciones utilizadas en la conexión.

$status = $conn->status
Regresa el estado de la conexión, los valores a comparar son: PGRES_CONNECTION_OK y PGRES_CONNECTION_BAD.

$errorMessage = $conn->errorMessage
Regresa el último mensaje de error asociado con la conexión.

$fd = $conn->socket
Obtiene el descriptor de archivo asociado al socket de la conexión. Un valor de 95#95 indica que no hay conexión actual.

$pid = $conn->backendPID
Regresa el Process ID14.1 del proceso que está respondiendo del lado del servidor.

$conn->trace(debug_port)
Regresa todos los mensajes entre el servidor y el cliente utilizando el stream14.2 debug_port.

$conn->untrace
Detiene el proceso de guardar todos los mensajes entre el servidor y el cliente.

$result = $conn->exec($query)
Envía una consulta al servidor. El valor de regreso es un apuntador a la estructura PGresult que contiene toda la información regresada por el servidor. Antes de examinar $result es necesario llamar el método resultStatus para saber si la operación terminó bien y si el contenido de $result es válido.

($table, $pid) = $conn->notifies
Revisa si se han hecho notificaciones asíncronas. La lista que regresa se compone de la tabla escuchada y el PID del servidor.

$ret = $conn->sendQuery($string, $query)
Envía una consulta al servidor sin esperar por los resultados. Para obtener los resultados, es necesario invocar getResult varias veces hasta que regrese un NULL, indicando que terminó el proceso.

$result = $conn->getResult
Espera el siguiente resultado obtenido a partir de sendQuery y lo regresa. Regresa NULL cuando la consulta ha finalizado y no hay más resultados que mostrar. Este método se bloquea sólo si existe una consulta activa y los datos de respuesta no han sido leidos por consumeInput.

$ret = $conn->isBusy
Regresa TRUE si una consulta está en proceso, es decir si getResult se bloquearía esperando por el resultado. Un valor FALSE indica que getResult puede ser llamado sin que bloquee.

$result = $conn->consumeInput
Si hay resultados esperando a ser leidos, los toma. Luego de ser llamado consumeInput, la aplicación puede checar con los métodos isBusy o notifies para saber si el estado ha cambiado.

$ret = $conn->getline($cadena, $longitud)
Lee una cadena de longitud $longitud - 1 del servidor. Regresa EOF en caso de que no haya más que leer, 0 si leyó una línea completa y 1 en caso de que el buffer esté lleno. Si la línea consiste de los dos carácteres ``\.'', el servidor ha terminado de enviar resultados.

$ret = $conn->putline($cadena)
Envía una cadena al servidor. La aplicación debe de enviar explícitamente los carácteres ``\.'' para indicarle al servidor que ha terminado de enviar datos.

$ret = $conn->getlineAsync($buffer, $bufsize)
Versión del método getline que no bloquea. Lee hasta $bufsize carácteres del servidor. Regresa -1 si la marca de fin de copia (\.) es encontrada, 0 si no hay datos y un valor mayor que 0 indicando el número de bytes leídos.

$ret = $conn->putnbytes($buffer, $nbytes)
Envía los $nbytes contenidos en $buffer al servidor. Regresa 0 si no hay error, EOF en caso contrario.

$ret = $conn->endcopy
Este método espera hasta que el servidor haya terminado la copia de datos. Debe de ser empleado cuando la última cadena ha sido enviada con putline o cuando la última cadena ha sido recibida con getline. Regresa 0 cuando hay éxito, 1 en caso contrario.

$result = $conn->makeEmptyPGresult($status);
Regresa una variable del tipo PGresult, limpia e inicializada con el estado dado en $status.


next up previous contents index
Next: La estructura PGresult Up: Pg Previous: Pg   Índice General   Índice de Materias
Ismael Olea 2001-04-21