7. 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 PostgreSQL has been understood. Later chapters in this part describe the server-side programming languages available in the PostgreSQL distribution as well as general issues concerning server-side programming languages. It is essential to read at least the earlier sections of extend (covering functions) before diving into the material about server-side programming languages.
- 7.1. Extending SQL
- 7.2. Triggers
- 7.3. Event Triggers
- 7.4. The Rule System
- 7.5. Procedural Languages
- 7.6. PL/Tcl — Tcl Procedural Language
- 7.6.1. Overview
- 7.6.2. PL/Tcl Functions and Arguments
- 7.6.3. Data Values in PL/Tcl
- 7.6.4. Global Data in PL/Tcl
- 7.6.5. Database Access from PL/Tcl
- 7.6.6. Trigger Functions in PL/Tcl
- 7.6.7. Event Trigger Functions in PL/Tcl
- 7.6.8. Error Handling in PL/Tcl
- 7.6.9. Explicit Subtransactions in PL/Tcl
- 7.6.10. Transaction Management
- 7.6.11. PL/Tcl Configuration
- 7.6.12. Tcl Procedure Names
- 7.7. PL/Perl — Perl Procedural Language
- 7.8. PL/Python — Python Procedural Language
- 7.9. Server Programming Interface
- 7.9.1. Interface Functions
- 7.9.2. Description
- 7.9.3. Return Value
- 7.9.4. Description
- 7.9.5. Return Value
- 7.9.6. Description
- 7.9.7. Arguments
- 7.9.8. Return Value
- 7.9.9. Notes
- 7.9.10. Description
- 7.9.11. Arguments
- 7.9.12. Return Value
- 7.9.13. Description
- 7.9.14. Arguments
- 7.9.15. Return Value
- 7.9.16. Description
- 7.9.17. Arguments
- 7.9.18. Return Value
- 7.9.19. Description
- 7.9.20. Arguments
- 7.9.21. Return Value
- 7.9.22. Notes
- 7.9.23. Description
- 7.9.24. Arguments
- 7.9.25. Return Value
- 7.9.26. Notes
- 7.9.27. Description
- 7.9.28. Arguments
- 7.9.29. Return Value
- 7.9.30. Description
- 7.9.31. Arguments
- 7.9.32. Return Value
- 7.9.33. Description
- 7.9.34. Arguments
- 7.9.35. Return Value
- 7.9.36. Description
- 7.9.37. Arguments
- 7.9.38. Return Value
- 7.9.39. Description
- 7.9.40. Arguments
- 7.9.41. Return Value
- 7.9.42. Description
- 7.9.43. Arguments
- 7.9.44. Return Value
- 7.9.45. Description
- 7.9.46. Arguments
- 7.9.47. Return Value
- 7.9.48. Description
- 7.9.49. Arguments
- 7.9.50. Return Value
- 7.9.51. Description
- 7.9.52. Arguments
- 7.9.53. Return Value
- 7.9.54. Description
- 7.9.55. Arguments
- 7.9.56. Return Value
- 7.9.57. Description
- 7.9.58. Arguments
- 7.9.59. Return Value
- 7.9.60. Description
- 7.9.61. Arguments
- 7.9.62. Return Value
- 7.9.63. Description
- 7.9.64. Arguments
- 7.9.65. Return Value
- 7.9.66. Description
- 7.9.67. Arguments
- 7.9.68. Return Value
- 7.9.69. Description
- 7.9.70. Arguments
- 7.9.71. Return Value
- 7.9.72. Notes
- 7.9.73. Description
- 7.9.74. Arguments
- 7.9.75. Notes
- 7.9.76. Description
- 7.9.77. Arguments
- 7.9.78. Return Value
- 7.9.79. Notes
- 7.9.80. Description
- 7.9.81. Arguments
- 7.9.82. Return Value
- 7.9.83. Notes
- 7.9.84. Description
- 7.9.85. Arguments
- 7.9.86. Description
- 7.9.87. Arguments
- 7.9.88. Return Value
- 7.9.89. Notes
- 7.9.90. Description
- 7.9.91. Arguments
- 7.9.92. Return Value
- 7.9.93. Notes
- 7.9.94. Description
- 7.9.95. Arguments
- 7.9.96. Return Value
- 7.9.97. Description
- 7.9.98. Arguments
- 7.9.99. Return Value
- 7.9.100. Description
- 7.9.101. Arguments
- 7.9.102. Return Value
- 7.9.103. Interface Support Functions
- 7.9.104. Description
- 7.9.105. Arguments
- 7.9.106. Return Value
- 7.9.107. Description
- 7.9.108. Arguments
- 7.9.109. Return Value
- 7.9.110. Description
- 7.9.111. Arguments
- 7.9.112. Return Value
- 7.9.113. Description
- 7.9.114. Arguments
- 7.9.115. Return Value
- 7.9.116. Description
- 7.9.117. Arguments
- 7.9.118. Return Value
- 7.9.119. Description
- 7.9.120. Arguments
- 7.9.121. Return Value
- 7.9.122. Description
- 7.9.123. Arguments
- 7.9.124. Return Value
- 7.9.125. Description
- 7.9.126. Arguments
- 7.9.127. Return Value
- 7.9.128. Description
- 7.9.129. Arguments
- 7.9.130. Return Value
- 7.9.131. Memory Management
- 7.9.132. Description
- 7.9.133. Arguments
- 7.9.134. Return Value
- 7.9.135. Description
- 7.9.136. Arguments
- 7.9.137. Return Value
- 7.9.138. Description
- 7.9.139. Arguments
- 7.9.140. Description
- 7.9.141. Arguments
- 7.9.142. Return Value
- 7.9.143. Description
- 7.9.144. Arguments
- 7.9.145. Return Value
- 7.9.146. Description
- 7.9.147. Arguments
- 7.9.148. Return Value
- 7.9.149. Description
- 7.9.150. Arguments
- 7.9.151. Description
- 7.9.152. Arguments
- 7.9.153. Description
- 7.9.154. Arguments
- 7.9.155. Return Value
- 7.9.156. Transaction Management
- 7.9.157. Description
- 7.9.158. Description
- 7.9.159. Description
- 7.9.160. Visibility of Data Changes
- 7.9.161. Examples
- 7.10. Background Worker Processes
- 7.11. Logical Decoding
- 7.11.1. Logical Decoding Examples
- 7.11.2. Logical Decoding Concepts
- 7.11.3. Streaming Replication Protocol Interface
- 7.11.4. Logical Decoding SQL Interface
- 7.11.5. System Catalogs Related to Logical Decoding
- 7.11.6. Logical Decoding Output Plugins
- 7.11.7. Logical Decoding Output Writers
- 7.11.8. Synchronous Replication Support for Logical Decoding
- 7.11.9. Streaming of Large Transactions for Logical Decoding
- 7.11.10. Two-phase Commit Support for Logical Decoding
- 7.12. Replication Progress Tracking
- 7.13. Archive Modules