PostgreSQL查询以单个查询重命名和更改列类型
技术问答
271 人阅读
|
0 人回复
|
2023-09-14
|
在PostgreSQL如果我需要重命名和更改列数据类型,我需要操作两个单独的查询。/ W" m4 g6 R6 e% T
重命名:
( R. ~0 Q" o" ~8 g- c DALTER TABLE tblName RENAME TO 并更改列类型:" U8 q2 f, z1 Y: g8 L8 F( h; l& g7 o
ALTER TABLE tblName ALTER COLUMN .但是有什么方法可以通过单个查询来完成这两项工作呢比如以下MySQL查询:
; L% ]" l x9 _ Q* S5 rALTER TABLE tblName CHANGE COLUMN
! G9 F+ n+ L/ U" o 解决方案: 6 t& ^ b+ k$ I. h, z) j
在PostgreSQL中,ALTER TABLE可采用一系列操作。5 G( o, `) f* F
ALTER TABLE [table] RENAME TO ;ALTER TABLE [table] ALTER COLUMN TYPE ;是相同的/ p E* n) y: W5 H8 N& F
ALTER TABLE [table] ALTER COLUMN TYPE RENAME TO ;但是…为什么呢?IIRC重命名不会导致全表扫描,所以单独执行一个事务中的两个句子是没有好处的。你真的想解决什么问题? |
|
|
|
|
|