database - 是否可以让 postgres 自动更新听觉表的列定义?

标签 database database-design postgresql

我有以下问题,我正在为项目中的某些实体使用审计表,例如,如果有一个“people”表,就会有一个“public_people_audit”表(其中“public”是表所在的架构是,“审计”只是一个被选择的后缀)。

现在的问题是,当团队中的某个人修改“people”表并向其中添加一列时,他们可能会忘记在 auditory 表上执行此操作,系统将失败,因为它会尝试插入新的列值在审计表中,它不会找到它。

我知道团队应该小心并在两个表中进行修改,但是如果有一种方法可以自动执行此操作,那么如果有人创建“ALTER TABLE people ADD COLUMN foo VARCHAR(10)”,则相同的命令将在 public_people_audit 表上执行这将非常有帮助。

最佳答案

简短的回答:没有。

较长的答案是您可以通过创建一个快速脚本来自动执行此操作。制作一个简单的文本文件,列出一些需要审计的表。该脚本读取文本文件,查看基表中的列,并确保将任何缺失的列添加到审计表中。

关于database - 是否可以让 postgres 自动更新听觉表的列定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4453224/

相关文章:

java - MongoDB:如何实现 PUT 方法来保存对象?

java - 用java获取Mysql数据库创建日期

php - 在 JSON 中编码数据

mongodb - 我应该为 mongodb 中的不同用户提供不同的集合吗?

mysql - 将表链接到 2 个不同键的最佳方法?

sql - Facebook 数据库设计?

postgresql - 在数据库中插入数据时出现客户端编码错误(我在 Codeigniter 中使用 Postgre SQL)

mysql - 未知的列问题

regex - 如何在 PostgreSQL 中匹配句子中的最后两个单词?

arrays - Postgresql 9.5 JSONB嵌套数组LIKE语句