DDL 触发器
来自 PostgreSQL Wiki
跳转到导航跳转到搜索DDL 触发器
此页面旨在协调 DDL 触发器的开发工作。
用例
- 强制实施业务逻辑
- 示例:将表名限制为某些规则 (CREATE TABLE 触发器)
- 审计
- 示例:需要知道何时有人删除了表
- 复制
- Slony、Bucardo 等可以自动复制 DDL 语句
问题
- 使用现有的钩子
- 需要支持无法使用钩子的人(例如 PgAdmin)
- 当前的实用程序函数是递归的:触发器应该只在第一次调用时触发
- 导出什么?从简单开始
- 对象类型
- 对象的 OID
- 对象的名称
- 动作
- 使用 nodeToString 还是 nodeToSql?
- 返回原始字符串?
- 调用的语法
- 如何在系统表中存储(将动作映射到函数)