使用psql重命令列
使用 ALTER TABLE RENAME COLUMN
语句更改列名称。
ALTER TABLE [schema_name.]table_name
RENAME COLUMN <column_name> to <new_column_name>
假设您已经有 employee
表。
让我们将 employee
表中新添加的列名称从 email_id
列更改为 email。
ALTER TABLE employee
RENAME email_id TO email;
现在,email_id
列已重命名。
如果您尝试重命名不存在的列,则 PostgreSQL 将引发错误。
重命名多个列
Postgres 不支持使用一条语句重命名多个列。要重命名多个列,您需要对每列多次执行 ALTER TABLE RENAME COLUMN 语句。
ALTER TABLE employee
RENAME email_id TO email;
ALTER TABLE employee
RENAME birthdate TO date_of_birth;
注意:如果您重命名另一个数据库对象(例如视图、外部键约束、函数、过程或触发器)中引用的列,那么 Postgres 将自动更改这些依赖对象中的列名称。
例如,如果在某些数据库过程中使用了employee
表的email_id
列,并且您将email_id
重命名为email
,那么在引用它的过程中它将自动更改。
使用 pgAdmin 重命名列
您可以通过右键单击表名并选择"属性"来更改 pgAdmin 中一个或多个列的名称、类型和 NOT NULL 约束。 在弹出窗口中,转到"列"选项卡,您可以通过直接编辑或单击列上的编辑图标来编辑列名称、类型、长度以及设置/取消设置 NOT NULL 约束等,如下所示。
或者,您可以通过右键单击要重命名的列并在上下文菜单中选择"属性"来重命名 pgAdmin 中的列。这将打开一个弹出窗口,您可以在其中编辑列名称,如下所示。
单击"保存"按钮保存更改。