如果我想使用SQL在SQL数据库中简单地重命名一列(而不更改其类型或约束,仅更改其名称),该怎么做?还是不可能?
这适用于任何声称支持SQL的数据库,我只是在寻找一个特定于SQL的查询,而无论实际的数据库实现如何,该查询都将起作用。
在PostgreSQL(以及许多其他RDBMS)上,可以使用常规ALTER TABLE语句来做到这一点:
ALTER TABLE
=> SELECT * FROM Test1; id | foo | bar ----+-----+----- 2 | 1 | 2 => ALTER TABLE Test1 RENAME COLUMN foo TO baz; ALTER TABLE => SELECT * FROM Test1; id | baz | bar ----+-----+----- 2 | 1 | 2