You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
postgres/src/interfaces/libpgtcl
Bruce Momjian 54d9099596 Stamp CVS as 7.2. Update all interface version numbers. This is the 25 years ago
..
Makefile Stamp CVS as 7.2. Update all interface version numbers. This is the 25 years ago
README From: Randy Kunkee <kunkee@pluto.ops.NeoSoft.com> 28 years ago
libpgtcl.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 25 years ago
pgtcl.c pgindent run. Make it all clean. 25 years ago
pgtclCmds.c pgindent run. Make it all clean. 25 years ago
pgtclCmds.h pgindent run. Make it all clean. 25 years ago
pgtclId.c Restructure the key include files per recent pghackers discussion: there 25 years ago
pgtclId.h Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 25 years ago

README

libpgtcl is a library that implements Tcl commands for front-end
clients to interact with the Postgresql 6.3 (and perhaps later)
backends. See libpgtcl.doc for details.

For an example of how to build a new tclsh to use libpgtcl, see the
directory ../bin/pgtclsh

Note this version is modified by NeoSoft to have the following additional
features:

1. Postgres connections are a valid Tcl channel, and can therefore
be manipulated by the interp command (ie. shared or transfered).
A connection handle's results are transfered/shared with it.
(Result handles are NOT channels, though it was tempting). Note
that a "close $connection" is now functionally identical to a
"pg_disconnect $connection", although pg_connect must be used
to create a connection.

2. Result handles are changed in format: ${connection}.<result#>.
This just means for a connection 'pgtcl0', they look like pgtcl0.0,
pgtcl0.1, etc. Enforcing this syntax makes it easy to look up
the real pointer by indexing into an array associated with the
connection.

3. I/O routines are now defined for the connection handle. I/O to/from
the connection is only valid under certain circumstances: following
the execution of the queries "copy <table> from stdin" or
"copy <table> to stdout". In these cases, the result handle obtains
an intermediate status of "PGRES_COPY_IN" or "PGRES_COPY_OUT". The
programmer is then expected to use Tcl gets or read commands on the
database connection (not the result handle) to extract the copy data.
For copy outs, read until the standard EOF indication is encountered.
For copy ins, puts a single terminator (\.). The statement for this
would be
puts $conn "\\." or puts $conn {\.}
In either case (upon detecting the EOF or putting the `\.', the status
of the result handle will change to "PGRES_COMMAND_OK", and any further
I/O attempts will cause a Tcl error.