是否可以在一条语句中重命名多个列,类似于:
ALTER TABLE Users
RENAME COLUMN userName TO user_name,
RENAME COLUMN realName TO real_name;
是否可以在一条语句中重命名多个列,类似于:
ALTER TABLE Users
RENAME COLUMN userName TO user_name,
RENAME COLUMN realName TO real_name;
编号.
虽然其他操作可以组合在一起,但RENAME
不能。 手册:
所有只作用于单个表的
ALTER TABLE
形式(除了RENAME
,SET SCHEMA
,ATTACH PARTITION
和DETACH PARTITION
)都可以组合成多个一起应用的更改列表。
由于RENAME
是对系统目录的微小操作,因此运行多个语句不会造成任何损害。为了最小化锁定开销并避免与中间状态发生竞争条件(这些状态对所有其他事务都不可见),请在单个事务中执行它们。
其他操作,如ALTER COLUMN ... SET TYPE
,可能会非常昂贵,因为它们可能需要重写整个表。对于大表格,尽可能在单个语句中完成尽可能多的操作是明智的选择。