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 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. It is essential to read at least the earlier sections of Chapter 34 (covering functions) before diving into the material about server-side programming.
Table of Contents
- 34. Extending SQL
- 34.1. How Extensibility Works
- 34.2. The Tantor SE-1C Type System
- 34.3. User-Defined Functions
- 34.4. User-Defined Procedures
- 34.5. Query Language (SQL) Functions
- 34.6. Function Overloading
- 34.7. Function Volatility Categories
- 34.8. Procedural Language Functions
- 34.9. Internal Functions
- 34.10. Function Optimization Information
- 34.11. User-Defined Aggregates
- 34.12. User-Defined Types
- 34.13. User-Defined Operators
- 34.14. Operator Optimization Information
- 34.15. Interfacing Extensions to Indexes
- 34.16. Packaging Related Objects into an Extension
- 34.17. Extension Building Infrastructure
- 35. Triggers
- 36. Event Triggers
- 37. The Rule System
- 38. Procedural Languages
- 39. PL/pgSQL — SQL Procedural Language
- 39.1. Overview
- 39.2. Structure of PL/pgSQL
- 39.3. Declarations
- 39.4. Expressions
- 39.5. Basic Statements
- 39.6. Control Structures
- 39.7. Cursors
- 39.8. Transaction Management
- 39.9. Errors and Messages
- 39.10. Trigger Functions
- 39.11. PL/pgSQL under the Hood
- 39.12. Tips for Developing in PL/pgSQL
- 39.13. Porting from Oracle PL/SQL
- 40. PL/Tcl — Tcl Procedural Language
- 40.1. Overview
- 40.2. PL/Tcl Functions and Arguments
- 40.3. Data Values in PL/Tcl
- 40.4. Global Data in PL/Tcl
- 40.5. Database Access from PL/Tcl
- 40.6. Trigger Functions in PL/Tcl
- 40.7. Event Trigger Functions in PL/Tcl
- 40.8. Error Handling in PL/Tcl
- 40.9. Explicit Subtransactions in PL/Tcl
- 40.10. Transaction Management
- 40.11. PL/Tcl Configuration
- 40.12. Tcl Procedure Names
- 41. PL/Perl — Perl Procedural Language
- 42. PL/Python — Python Procedural Language
- 43. Server Programming Interface
- 44. Background Worker Processes
- 45. Logical Decoding
- 45.1. Logical Decoding Examples
- 45.2. Logical Decoding Concepts
- 45.3. Streaming Replication Protocol Interface
- 45.4. Logical Decoding SQL Interface
- 45.5. System Catalogs Related to Logical Decoding
- 45.6. Logical Decoding Output Plugins
- 45.7. Logical Decoding Output Writers
- 45.8. Synchronous Replication Support for Logical Decoding
- 45.9. Streaming of Large Transactions for Logical Decoding
- 45.10. Two-phase Commit Support for Logical Decoding
- 46. Replication Progress Tracking
- 47. Archive Modules