Hubert 'depesz' Lubaczewski:等待 PostgreSQL 17 – 使用 ALTER TABLE 命令更改生成表达式

💡 原文英文,约700词,阅读约需3分钟。
📝

内容提要

2024年1月4日,Peter Eisentraut提交了一个补丁,增加了一个新的ALTER TABLE子命令ALTER COLUMN ... SET EXPRESSION,用于更改生成列的生成表达式。该命令会导致表重写,并使用ALTER TABLE机制。该命令需要在AlterTablePass中进行新的传递,并且ADD COLUMN传递必须提前,以便ADD COLUMN和SET EXPRESSION的组合可以工作。作者对此表示有些复杂的感觉,但认为功能很棒,并感谢所有参与者。

🎯

关键要点

  • 2024年1月4日,Peter Eisentraut提交了一个补丁,增加了ALTER TABLE子命令ALTER COLUMN ... SET EXPRESSION。
  • 该命令用于更改生成列的生成表达式,导致表重写并使用ALTER TABLE机制。
  • 实现类似于SET DATA TYPE子命令,需在AlterTablePass中进行新的传递。
  • ADD COLUMN传递必须提前,以便ADD COLUMN和SET EXPRESSION的组合可以工作。
  • 作者对此功能感到复杂,但认为功能很棒,并感谢所有参与者。
  • 可以通过ALTER TABLE命令更改生成表达式,虽然需要表重写和长时间锁定。
  • 作者对SQL的冗长表示了一些不满,希望能有更简洁的表达方式。
➡️

继续阅读