如何在postgresql中删除多列

Posted

技术标签:

【中文标题】如何在postgresql中删除多列【英文标题】:How to drop multiple columns in postgresql 【发布时间】:2012-11-20 13:42:39 【问题描述】:

我想在 PostgreSQL 的表中删除 200 列。我试过了:

ALTER TABLE my_table
DROP COLUMN col1, col2

但我收到这样的错误:

错误:“col2”处或附近的语法错误

【问题讨论】:

对列使用双引号。 我会担心一个表中有 200 列,更不用说删除它们了。如果这不仅仅是一次性的特殊事件,请退后一步,看看你的设计。 您阅读手册了吗?postgresql.org/docs/current/static/sql-altertable.html .语法在那里列出。 【参考方案1】:

检查一下:

ALTER TABLE table DROP COLUMN col1, DROP COLUMN col2;

【讨论】:

对我不起作用。我得到:ERROR: 42601: syntax error at or near "," 您甚至可以省略“COLUMN”并使用ALTER TABLE table DROP col1, DROP col2;【参考方案2】:

这对我有用:

alter table your_table_name drop column your_column_name;

【讨论】:

他们要求多列,而不是一列。但是,您可以为每一列运行多次。

以上是关于如何在postgresql中删除多列的主要内容,如果未能解决你的问题,请参考以下文章

postgresql 上的更新类型

PostgreSQL数据库创建/删除

如何在 postgresql 中使用 postgres_fdw 从另一个数据库中获取记录

如何删除多行 typeorm - postgresql 和 node.js(typescript)

PostgreSQL 配置安装

postgresql删除用户提示ERROR: role postgres1 cannot be dropped because some objects depend on it