PostgreSQL 7.2 Programmer's Guide
The PostgreSQL Global Development Group
Copyright
© 1996-2001 by PostgreSQL Global Development Group
Table of Contents
Organization
I.
Client Interfaces
1.
libpq - C Library
1.1.
Database Connection Functions
1.2.
Query Execution Functions
1.3.
Asynchronous Query Processing
1.4.
Fast Path
1.5.
Asynchronous Notification
1.6.
Functions Associated with the COPY Command
1.7.
libpq
Tracing Functions
1.8.
libpq
Control Functions
1.9.
Environment Variables
1.10.
Threading Behavior
1.11.
Example Programs
2.
Large Objects
2.1.
Historical Note
2.2.
Implementation Features
2.3.
Interfaces
2.4.
Built in registered functions
2.5.
Accessing Large Objects from LIBPQ
2.6.
Sample Program
3.
libpq++ - C++ Binding Library
3.1.
Control and Initialization
3.2.
libpq++ Classes
3.3.
Database Connection Functions
3.4.
Query Execution Functions
3.5.
Asynchronous Notification
3.6.
Functions Associated with the COPY Command
4.
pgtcl - Tcl Binding Library
4.1.
Commands
4.2.
Examples
4.3.
pgtcl Command Reference Information
5.
libpgeasy - Simplified C Library
6.
ecpg
- Embedded
SQL
in
C
6.1.
Why Embedded
SQL
?
6.2.
The Concept
6.3.
How To Use
ecpg
6.4.
Limitations
6.5.
Porting From Other
RDBMS
Packages
6.6.
For the Developer
7.
ODBC Interface
7.1.
Background
7.2.
Installation
7.3.
Configuration Files
7.4.
Windows
Applications
7.5.
ApplixWare
8.
JDBC
Interface
8.1.
Setting up the
JDBC
Driver
8.2.
Using the Driver
8.3.
Issuing a Query and Processing the Result
8.4.
Performing Updates
8.5.
Using Large Objects
8.6.
PostgreSQL
Extensions to the
JDBC
API
8.7.
Using the driver in a multi-threaded or a servlet environment
8.8.
Further Reading
9.
PyGreSQL
-
Python
Interface
9.1.
The
pg
Module
9.2.
pg
Module Functions
9.3.
Connection object:
pgobject
9.4.
Database wrapper class:
DB
9.5.
Query result object:
pgqueryobject
9.6.
Large Object:
pglarge
9.7.
DB-API
Interface
II.
Server Programming
10.
Architecture
10.1.
Postgres
Architectural Concepts
11.
Extending
SQL
: An Overview
11.1.
How Extensibility Works
11.2.
The
Postgres
Type System
11.3.
About the
Postgres
System Catalogs
12.
Extending
SQL
: Functions
12.1.
Query Language (
SQL
) Functions
12.2.
Procedural Language Functions
12.3.
Internal Functions
12.4.
C Language Functions
12.5.
Function Overloading
13.
Extending
SQL
: Types
13.1.
User-Defined Types
14.
Extending
SQL
: Operators
14.1.
Operator Optimization Information
15.
Extending
SQL
: Aggregates
16.
The
Postgres
Rule System
16.1.
What is a Querytree?
16.2.
Views and the Rule System
16.3.
Rules on INSERT, UPDATE and DELETE
16.4.
Rules and Permissions
16.5.
Rules versus Triggers
17.
Interfacing Extensions To Indexes
18.
Index Cost Estimation Functions
19.
GiST Indexes
20.
Triggers
20.1.
Trigger Creation
20.2.
Interaction with the Trigger Manager
20.3.
Visibility of Data Changes
20.4.
Examples
21.
Server Programming Interface
21.1.
Interface Functions
21.2.
Interface Support Functions
21.3.
Memory Management
21.4.
Visibility of Data Changes
21.5.
Examples
III.
Procedural Languages
22.
Procedural Languages
22.1.
Installing Procedural Languages
23.
PL/pgSQL -
SQL
Procedural Language
23.1.
Overview
23.2.
Description
23.3.
Trigger Procedures
23.4.
Examples
23.5.
Porting from Oracle PL/SQL
24.
PL/Tcl - TCL Procedural Language
24.1.
Overview
24.2.
Description
25.
PL/Perl - Perl Procedural Language
25.1.
Building and Installing
25.2.
Using PL/Perl
26.
PL/Python - Python Procedural Language
26.1.
Installation
26.2.
Using
List of Tables
4-1.
pgtcl
Commands
11-1.
Postgres System Catalogs
12-1.
Equivalent C Types for Built-In
Postgres
Types
17-1.
Index Schema
17-2.
B-tree Strategies
23-1.
Single Quotes Escaping Chart
List of Figures
10-1.
How a connection is established
11-1.
The major
Postgres
system catalogs
List of Examples
1-1.
libpq Example Program 1
1-2.
libpq Example Program 2
1-3.
libpq Example Program 3
8-1.
Processing a Simple Query in
JDCB
8-2.
Using the
JDBC
Large Object Interface
23-1.
A PL/pgSQL Trigger Procedure Example
23-2.
A Simple PL/pgSQL Function to Increment an Integer
23-3.
A Simple PL/pgSQL Function to Concatenate Text
23-4.
A PL/pgSQL Function on Composite Type
23-5.
A Simple Function
23-6.
A Function that Creates Another Function
23-7.
A Procedure with a lot of String Manipulation and OUT Parameters
Prev
Home
Next
Timing Results
Organization