回答

收藏

PostgreSQL查询以单个查询重命名和更改列类型

技术问答 技术问答 446 人阅读 | 0 人回复 | 2023-09-14

在PostgreSQL如果我需要重命名和更改列数据类型,我需要操作两个单独的查询。
1 S9 f/ t+ d$ r1 L1 f重命名:
9 J) l' s2 O0 L6 h, ~) P4 Q3 BALTER TABLE tblName RENAME  TO 并更改列类型:# ]  P" t! k/ x. e5 c
ALTER TABLE tblName ALTER COLUMN  .但是有什么方法可以通过单个查询来完成这两项工作呢比如以下MySQL查询:
- t: {% S1 D: ~* PALTER TABLE tblName CHANGE COLUMN                   + E1 b. J( c, n6 y& r9 J, M
    解决方案:                                                               
9 v- Z" W- z* B0 u0 y* v* M, ]                                                                在PostgreSQL中,ALTER TABLE可采用一系列操作。- ^6 }  B9 E+ Z8 \% u
ALTER TABLE [table] RENAME  TO ;ALTER TABLE [table] ALTER COLUMN  TYPE ;是相同的) w3 e6 n, v5 p; h& _
ALTER TABLE [table]   ALTER COLUMN  TYPE   RENAME  TO ;但是…为什么呢?IIRC重命名不会导致全表扫描,所以单独执行一个事务中的两个句子是没有好处的。你真的想解决什么问题?
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则