PostgreSQL Reference ManualVolume 2: Programming Guidefor version 8.2.4.June 2007The PostgreSQL Global Development Group |
- Publisher's Preface
- Client Interfaces
- 1 libpq - C Library
- 1.1 Database Connection Control Functions
- 1.2 Connection Status Functions
- 1.3 Command Execution Functions
- 1.4 Asynchronous Command Processing
- 1.5 Cancelling Queries in Progress
- 1.6 The Fast-Path Interface
- 1.7 Asynchronous Notification
- 1.8 Functions Associated with the COPY Command
- 1.9 Control Functions
- 1.10 Miscellaneous Functions
- 1.11 Notice Processing
- 1.12 Environment Variables
- 1.13 The Password File
- 1.14 The Connection Service File
- 1.15 LDAP Lookup of Connection Parameters
- 1.16 SSL Support
- 1.17 Behavior in Threaded Programs
- 1.18 Building libpq Programs
- 1.19 Example Programs
- 2 Large Objects
- 2.1 Introduction
- 2.2 Implementation Features
- 2.3 Client Interfaces
- 2.3.1 Creating a Large Object
- 2.3.2 Importing a Large Object
- 2.3.3 Exporting a Large Object
- 2.3.4 Opening an Existing Large Object
- 2.3.5 Writing Data to a Large Object
- 2.3.6 Reading Data from a Large Object
- 2.3.7 Seeking in a Large Object
- 2.3.8 Obtaining the Seek Position of a Large Object
- 2.3.9 Closing a Large Object Descriptor
- 2.3.10 Removing a Large Object
- 2.4 Server-Side Functions
- 2.5 Example Program
- 3 ECPG - Embedded SQL in C
- 3.1 The Concept
- 3.2 Connecting to the Database Server
- 3.3 Closing a Connection
- 3.4 Running SQL Commands
- 3.5 Choosing a Connection
- 3.6 Using Host Variables
- 3.7 Dynamic SQL
- 3.8 pgtypes library
- 3.9 Informix compatibility mode
- 3.10 Using SQL Descriptor Areas
- 3.11 Error Handling
- 3.12 Preprocessor directives
- 3.13 Processing Embedded SQL Programs
- 3.14 Library Functions
- 3.15 Internals
- 4 The Information Schema
- 4.1 The Schema
- 4.2 Data Types
- 4.3 information_schema_catalog_name
- 4.4 administrable_role_authorizations
- 4.5 applicable_roles
- 4.6 attributes
- 4.7 check_constraint_routine_usage
- 4.8 check_constraints
- 4.9 column_domain_usage
- 4.10 column_privileges
- 4.11 column_udt_usage
- 4.12 columns
- 4.13 constraint_column_usage
- 4.14 constraint_table_usage
- 4.15 data_type_privileges
- 4.16 domain_constraints
- 4.17 domain_udt_usage
- 4.18 domains
- 4.19 element_types
- 4.20 enabled_roles
- 4.21 key_column_usage
- 4.22 parameters
- 4.23 referential_constraints
- 4.24 role_column_grants
- 4.25 role_routine_grants
- 4.26 role_table_grants
- 4.27 role_usage_grants
- 4.28 routine_privileges
- 4.29 routines
- 4.30 schemata
- 4.31 sequences
- 4.32 sql_features
- 4.33 sql_implementation_info
- 4.34 sql_languages
- 4.35 sql_packages
- 4.36 sql_parts
- 4.37 sql_sizing
- 4.38 sql_sizing_profiles
- 4.39 table_constraints
- 4.40 table_privileges
- 4.41 tables
- 4.42 triggers
- 4.43 usage_privileges
- 4.44 view_column_usage
- 4.45 view_routine_usage
- 4.46 view_table_usage
- 4.47 views
- Server Programming
- 5 Extending SQL
- 5.1 How Extensibility Works
- 5.2 The PostgreSQL Type System
- 5.3 User-Defined Functions
- 5.4 Query Language (SQL) Functions
- 5.5 Function Overloading
- 5.6 Function Volatility Categories
- 5.7 Procedural Language Functions
- 5.8 Internal Functions
- 5.9 C-Language Functions
- 5.9.1 Dynamic Loading
- 5.9.2 Base Types in C-Language Functions
- 5.9.3 Version 0 Calling Conventions
- 5.9.4 Version 1 Calling Conventions
- 5.9.5 Writing Code
- 5.9.6 Compiling and Linking Dynamically-Loaded Functions
- 5.9.7 Extension Building Infrastructure
- 5.9.8 Composite-Type Arguments
- 5.9.9 Returning Rows (Composite Types)
- 5.9.10 Returning Sets
- 5.9.11 Polymorphic Arguments and Return Types
- 5.9.12 Shared Memory and LWLocks
- 5.10 User-Defined Aggregates
- 5.11 User-Defined Types
- 5.12 User-Defined Operators
- 5.13 Operator Optimization Information
- 5.14 Interfacing Extensions To Indexes
- 6 Triggers
- 7 The Rule System
- 8 Procedural Languages
- 9 PL/pgSQL - SQL Procedural Language
- 9.1 Overview
- 9.2 Tips for Developing in PL/pgSQL
- 9.3 Structure of PL/pgSQL
- 9.4 Declarations
- 9.5 Expressions
- 9.6 Basic Statements
- 9.7 Control Structures
- 9.8 Cursors
- 9.9 Errors and Messages
- 9.10 Trigger Procedures
- 9.11 Porting from Oracle PL/SQL
- 10 PL/Tcl - Tcl Procedural Language
- 11 PL/Perl - Perl Procedural Language
- 12 PL/Python - Python Procedural Language
- 13 Server Programming Interface
- 13.1 Interface Functions
- 13.1.1 SPI_connect
- 13.1.2 SPI_finish
- 13.1.3 SPI_push
- 13.1.4 SPI_pop
- 13.1.5 SPI_execute
- 13.1.6 SPI_exec
- 13.1.7 SPI_prepare
- 13.1.8 SPI_getargcount
- 13.1.9 SPI_getargtypeid
- 13.1.10 SPI_is_cursor_plan
- 13.1.11 SPI_execute_plan
- 13.1.12 SPI_execp
- 13.1.13 SPI_cursor_open
- 13.1.14 SPI_cursor_find
- 13.1.15 SPI_cursor_fetch
- 13.1.16 SPI_cursor_move
- 13.1.17 SPI_cursor_close
- 13.1.18 SPI_saveplan
- 13.2 Interface Support Functions
- 13.3 Memory Management
- 13.4 Visibility of Data Changes
- 13.5 Examples
- 13.1 Interface Functions
- Books from the publisher
- Index
| ISBN 0954612035 | PostgreSQL Reference Manual - Volume 2 - Programming Guide | See the print edition |