是否可以在单个语句中重命名多个列,类似于:
ALTER TABLE Users
RENAME COLUMN userName TO user_name,
RENAME COLUMN realName TO real_name;
答案 0 :(得分:36)
否强>
虽然可以合并其他操作,但RENAME
无法实现。 The manual:
所有
ALTER TABLE
形式的单个表格,除了RENAME
,SET SCHEMA
,ATTACH PARTITION
和DETACH PARTITION
都可以 合并为一起应用的多个变更列表。
由于RENAME
是对系统目录的微小操作,因此运行多个语句没有任何害处。在单个事务中执行此操作以最小化锁定开销。
ALTER COLUMN ... SET TYPE
等其他操作可能很昂贵,因为他们可能需要重写整个表格。对于大表,最好在一个语句中尽可能多地做。