gpt4 book ai didi

postgresql - 如何使用 postgres 在表中的第 2 列或第 3 列之后在表中添加新列?

转载 作者:行者123 更新时间:2023-11-29 11:05:45 25 4
gpt4 key购买 nike

如何使用 postgres 在表格中的第 2 列或第 3 列之后添加新列?

我的代码如下所示

ALTER TABLE n_domains ADD COLUMN contract_nr int after owner_id

最佳答案

不,没有直接的方法可以做到这一点。这是有原因的——每个查询都应该以任何顺序(和格式等)列出它需要的所有字段,从而使一个表中列的顺序无关紧要。

如果您确实需要这样做,我可以想到一种解决方法:

  • 转储并保存相关表的描述(使用 pg_dump --schema-only --table=<schema.table> ... )
  • 在保存的定义中添加所需的列
  • 重命名已保存定义中的表,以免在您尝试创建它时与旧表的名称冲突
  • 使用这个定义创建新表
  • 使用“INSERT INTO <new_table>”将旧表中的数据填充到新表中选择字段 1、字段 2、<default_for_new_field> , field3, ... 来自 <old_table> ';
  • 重命名旧表
  • 将新表重命名为原来的名称
  • 在确保一切正常后,最终删除旧的、重命名的表

关于postgresql - 如何使用 postgres 在表中的第 2 列或第 3 列之后在表中添加新列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1243547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com