如何使用postgres在表中的第2或第3列后的表中添加新列?
我的代码看起来如下
ALTER TABLE n_domains ADD COLUMN contract_nr int after owner_id
不,没有直接的方法去做。有一个原因 – 每个查询应该列出它需要的任何顺序(和格式等)它需要的所有字段,从而使一个表中的列顺序无关紧要。
原文链接:https://www.f2er.com/postgresql/193628.html如果你真的需要这样做,我可以想到一个解决方法:
> dump并保存有问题的表的描述(使用pg_dump –schema-only –table =< schema.table> …)>在保存的定义中添加您想要的位置>重命名保存的定义中的表,以便在尝试创建旧表时不要与旧表的名称冲突>使用此定义创建新表>使用’INSERT INTO< new_table>来填充来自旧表的数据的新表。 SELECT field1,field2,< default_for_new_field>,field3,… FROM< old_table>‘;>重命名旧表>将新表重命名为原始名称>最后删除旧的,重命名的表,你确保一切正常