Part V. Server Programming#
Part V. Server Programming
This part is about extending the server functionality with user-defined functions, data types, triggers, etc. These are advanced topics which should probably be approached only after all the other user documentation about Tantor SE-1C has been understood. Later chapters in this part describe the server-side programming languages available in the Tantor SE-1C distribution as well as general issues concerning server-side programming languages. It is essential to read at least the earlier sections of Chapter 35 (covering functions) before diving into the material about server-side programming languages.
Table of Contents
- 35. Extending SQL
- 35.1. How Extensibility Works
- 35.2. The Tantor SE-1C Type System
- 35.3. User-Defined Functions
- 35.4. User-Defined Procedures
- 35.5. Query Language (SQL) Functions
- 35.6. Function Overloading
- 35.7. Function Volatility Categories
- 35.8. Procedural Language Functions
- 35.9. Internal Functions
- 35.10. Function Optimization Information
- 35.11. User-Defined Aggregates
- 35.12. User-Defined Types
- 35.13. User-Defined Operators
- 35.14. Operator Optimization Information
- 35.15. Interfacing Extensions to Indexes
- 35.16. Packaging Related Objects into an Extension
- 35.17. Extension Building Infrastructure
- 36. Triggers
- 37. Event Triggers
- 38. The Rule System
- 39. Procedural Languages
- 40. PL/pgSQL — SQL Procedural Language
- 40.1. Overview
- 40.2. Structure of PL/pgSQL
- 40.3. Declarations
- 40.4. Expressions
- 40.5. Basic Statements
- 40.6. Control Structures
- 40.7. Cursors
- 40.8. Transaction Management
- 40.9. Errors and Messages
- 40.10. Trigger Functions
- 40.11. PL/pgSQL under the Hood
- 40.12. Tips for Developing in PL/pgSQL
- 40.13. Porting from Oracle PL/SQL
- 41. PL/Tcl — Tcl Procedural Language
- 41.1. Overview
- 41.2. PL/Tcl Functions and Arguments
- 41.3. Data Values in PL/Tcl
- 41.4. Global Data in PL/Tcl
- 41.5. Database Access from PL/Tcl
- 41.6. Trigger Functions in PL/Tcl
- 41.7. Event Trigger Functions in PL/Tcl
- 41.8. Error Handling in PL/Tcl
- 41.9. Explicit Subtransactions in PL/Tcl
- 41.10. Transaction Management
- 41.11. PL/Tcl Configuration
- 41.12. Tcl Procedure Names
- 42. PL/Perl — Perl Procedural Language
- 43. PL/Python — Python Procedural Language
- 44. Server Programming Interface
- 45. Background Worker Processes
- 46. Logical Decoding
- 46.1. Logical Decoding Examples
- 46.2. Logical Decoding Concepts
- 46.3. Streaming Replication Protocol Interface
- 46.4. Logical Decoding SQL Interface
- 46.5. System Catalogs Related to Logical Decoding
- 46.6. Logical Decoding Output Plugins
- 46.7. Logical Decoding Output Writers
- 46.8. Synchronous Replication Support for Logical Decoding
- 46.9. Streaming of Large Transactions for Logical Decoding
- 46.10. Two-phase Commit Support for Logical Decoding
- 47. Replication Progress Tracking
- 48. Archive Modules
- Chapter 35. Extending SQL
- Chapter 36. Triggers
- Chapter 37. Event Triggers
- Chapter 38. The Rule System
- Chapter 39. Procedural Languages
- Chapter 40. PL/pgSQL — SQL Procedural Language
- Chapter 41. PL/Tcl — Tcl Procedural Language
- Chapter 42. PL/Perl — Perl Procedural Language
- Chapter 43. PL/Python — Python Procedural Language
- Chapter 44. Server Programming Interface
- Chapter 45. Background Worker Processes
- Chapter 46. Logical Decoding
- Chapter 47. Replication Progress Tracking
- Chapter 48. Archive Modules