这一部分是关于用用户定义的函数、数据类型、触发器等扩展服务器功能的。这些都是高级主题,可能只有在理解了所有其他关于PostgreSQL的用户文档之后,才应该讨论这些主题。本部分后面的章节将介绍PostgreSQL发行版中可用的服务器端编程语言,以及有关服务器端编程语言的一般问题。至少要阅读本书前面的章节第38章(涵盖函数)然后再深入学习有关服务器端编程语言的内容。
目录
38.扩展SQL
38.1. 可扩展性的工作原理
38.2. PostgreSQL类型系统
38.3. 用户定义函数
38.4. 用户定义的过程
38.5. 查询语言(SQL)函数
38.6. 函数得载
38.7. 函数波动类别
38.8. 程序语言功能
38.9. 内部功能
38.10. C语言函数
38.11. 函数优化信息
38.12. 用户定义的聚合
38.13. 用户定义的类型
38.14. 用户定义的运算符
38.15. 操作员优化信息
38.16. 索引接口扩展
38.17. 将相关对象打包到扩展中
38.18. 扩建建筑基础设施
39.触发器
39.1. 触发行为概述
39.2. 数据更改的可见性
39.3. 用C语言编写触发器函数
39.4. 一个完整的触发器示例
40.事件触发器
40.1. 事件触发行为概述
40.2. 事件触发触发矩阵
40.3. 用C语言编写事件触发函数
40.4. 一个完整的事件触发器示例
40.5. 表重写事件触发器示例
41.规则体系
41.1. 查询树
41.2. 观点和规则体系
41.3. 物化视图
41.4. 规定插入, 使现代化和删去
插入
使现代化
删去
41.5. 规则和特权
41.6. 规则和命令状态
41.7. 规则与触发器
42.程序语言
42.1. 安装过程语言
43.PL/pgSQL——SQL过程语言
43.1. 概述
43.2. PL/pgSQL的结构
43.3. 声明
43.4. 表达
43.5. 基本陈述
43.6. 控制结构
43.7. 光标
43.8. 交易管理
43.9. 错误和消息
43.10. 触发功能
43.11. 引擎盖下的PL/pgSQL
43.12. 在PL/pgSQL中开发的技巧
43.13. 从Oracle PL/SQL进行移植
44.PL/Tcl-Tcl过程语言
44.1. 概述
44.2. PL/Tcl函数和参数
44.3. PL/Tcl中的数据值
44.4. PL/Tcl中的全局数据
44.5. 从PL/Tcl访问数据库
44.6. PL/Tcl中的触发器函数
44.7. PL/Tcl中的事件触发器函数
44.8. PL/Tcl中的错误处理
44.9. PL/Tcl中的显式子转换
44.10. 交易管理
44.11. PL/Tcl配置
44.12. Tcl过程名称
45.PL/Perl——Perl过程语言
45.1. PL/Perl函数和参数
45.2. PL/Perl中的数据值
45.3. 内置函数
45.4. PL/Perl中的全局值
45.5. 可信和不可信的PL/Perl
45.6. PL/Perl触发器
45.7. PL/Perl事件触发器
45.8. 引擎盖下的PL/Perl
46.PL/Python——Python过程语言
46.1. Python 2与Python 3
46.2. PL/Python函数
46.3. 数据值
46.4. 共享数据
46.5. 匿名代码块
46.6. 触发功能
46.7. 数据库访问
46.8. 显式子转换
46.9. 交易管理
46.10. 效用函数
46.11. 环境变量
47.服务器编程接口
47.1. 接口功能
47.2. 接口支持功能
47.3. 内存管理
47.4. 交易管理
47.5. 数据更改的可见性
47.6. 例子
48.后台工作进程
49.逻辑解码
49.1. 逻辑解码示例
49.2. 逻辑解码概念
49.3. 流复制协议接口
49.4. 逻辑解码SQL接口
49.5. 与逻辑解码相关的系统目录
49.6. 逻辑解码输出插件
49.7. 逻辑解码输出写入程序
49.8. 同步复制支持逻辑解码
49.9. 用于逻辑解码的大型事务流
49.10. 对逻辑解码的两阶段提交支持
50.复制进度跟踪