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重命名不会导致全表扫描,所以单独执行一个事务中的两个句子是没有好处的。你真的想解决什么问题? |
|
|
|
|
|