Chapter 4. pgtcl - Tcl Binding Library

Table of Contents
4.1. Introduction
4.2. Loading pgtcl into your application
4.3. pgtcl Command Reference Information
pg_connect -- open a connection to the backend server
pg_disconnect -- close a connection to the backend server
pg_conndefaults -- obtain information about default connection parameters
pg_exec -- send a command string to the server
pg_result -- get information about a query result
pg_select -- loop over the result of a SELECT statement
pg_listen -- set or change 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 file
pg_lo_export -- export a large object to a file

4.1. Introduction

pgtcl is a Tcl package for client programs to interface with PostgreSQL servers. It makes most of the functionality of libpq available to Tcl scripts.

This package was originally written by Jolly Chen.

Table 4-1 gives an overview over the commands available in pgtcl. These commands are described further on subsequent pages.

The pg_lo_* routines are interfaces to the large object features of PostgreSQL. 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/COMMIT 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/COMMIT transaction block.

Example 4-1 shows a small example of how to use the routines.