Chapter 4. pgtcl - Tcl Binding Library

Table of Contents
4.1. Commands
4.2. Examples
4.3. pgtcl Command Reference Information
pg_connect — opens a connection to the backend server
pg_disconnect — closes a connection to the backend server
pg_conndefaults — obtain information about default connection parameters
pg_exec — send a query string to the backend
pg_result — get information about a query result
pg_select — loop over the result of a SELECT statement
pg_listen — sets or changes a callback for asynchronous NOTIFY messages
pg_lo_creat — create a large object
pg_lo_open — open a large object
pg_lo_close — close a large object
pg_lo_read — read a large object
pg_lo_write — write a large object
pg_lo_lseek — seek to a position in a large object
pg_lo_tell — return the current seek position of a large object
pg_lo_unlink — delete a large object
pg_lo_import — import a large object from a Unix file
pg_lo_export — export a large object to a Unix file

pgtcl is a tcl package for front-end programs to interface with Postgres backends. It makes most of the functionality of libpq available to tcl scripts.

This package was originally written by Jolly Chen.

4.1. Commands

Table 4-1. pgtcl Commands

CommandDescription
pg_connectopens a connection to the backend server
pg_disconnectcloses a connection
pg_conndefaultsget connection options and their defaults
pg_execsend a query to the backend
pg_resultmanipulate the results of a query
pg_selectloop over the result of a SELECT statement
pg_listenestablish a callback for NOTIFY messages
pg_lo_creatcreate a large object
pg_lo_openopen a large object
pg_lo_closeclose a large object
pg_lo_readread a large object
pg_lo_writewrite a large object
pg_lo_lseekseek to a position in a large object
pg_lo_tellreturn the current seek position of a large object
pg_lo_unlinkdelete a large object
pg_lo_importimport a Unix file into a large object
pg_lo_exportexport a large object into a Unix file

These commands are described further on subsequent pages.

The pg_lo* routines are interfaces to the Large Object features of Postgres. The functions are designed to mimic the analogous file system functions in the standard Unix file system interface. The pg_lo* routines should be used within a BEGIN/END transaction block because the file descriptor returned by pg_lo_open is only valid for the current transaction. pg_lo_import and pg_lo_export MUST be used in a BEGIN/END transaction block.