I have noticed that ALTER TABLE supports multiple column actions
(ADD/DROP column etc), but does not support multiple column renaming.
See [1]
Here is small example of what im talking about:
```
db2=# create table tt();
CREATE TABLE
-- multiple column altering ok
db2=# alter table tt add column i int, add column j int;
ALTER TABLE
-- single column renaming ok
db2=# alter table tt rename column i to i2;
ALTER TABLE
-- multiple column renaming not allowed
db2=# alter table tt rename column i2 to i3, rename column j to j2;
ERROR: syntax error at or near ","
LINE 1: alter table tt rename column i2 to i3, rename column j to j2...
^
db2=#
```
Looking closely on gram.y, the only reason for this is that RenameStmt
is defined less flexible than alter_table_cmds (which is a list). All
other core infrastructure is ready to allow $subj.
So is it worth a patch?
[1] https://www.postgresql.org/docs/current/sql-altertable.html
--
Best regards,
Kirill Reshke