如何在 postrgesql 中修改/更改表中列的顺序?如果不可能,为什么? [重复]

问题描述 投票:0回答:0

我有一个包含一些列的表格,我想更改类似于以下示例的列的顺序

一些桌子 columnId, column1, column2, column3 等...

->

一些桌子 columnId, column3, column1, column2 等...

我尝试了以下语法:

ALTER TABLE some_table
    ORDER BY id, collumn2, collumn3, collumn1;

ALTER TABLE table_name MODIFY COLUMN column_name1 data_type AFTER column_name2;

我正在使用 postgresql server 15。我想通过 liquibase 迁移来执行更改。

我可以删除表并按所需顺序重做 sql,但这对于它所实现的目标来说似乎有点过分了。

现在,我知道这是一个小抱怨,因为除了一些公认的人体工程学改进之外,它几乎无关紧要,但是,对我来说,这更像是一种职业好奇心。怎么可能。

根据这篇文章这基本上是不可能的。

但是! 这篇文章最后一次编辑是在 8 年前,20 多年来人们一直对这个功能感兴趣——正如文章本身所解释的那样。因此,如果这个功能真的没有被实现,那么可能存在一个重大障碍,它会禁用该功能或使其实现不值得。

所以在这一点上,虽然找出如何有效地做到这一点仍然是我所追求的,但关于“为什么”的基础知识可能更有趣。

postgresql ddl postgresql-15
© www.soinside.com 2019 - 2024. All rights reserved.