PostgreSQL查询以单个查询重命名和更改列类型
技术问答
157 人阅读
|
0 人回复
|
2023-09-14
|
在PostgreSQL如果我需要重命名和更改列数据类型,我需要操作两个单独的查询。
% H( E$ A6 p6 j! Z" B; `; } g( D9 H) b重命名:
7 x/ K. ]* M9 G; [) k8 T% E2 F9 c& ]ALTER TABLE tblName RENAME TO 并更改列类型:
4 o8 V6 G2 `5 h5 d% WALTER TABLE tblName ALTER COLUMN .但是有什么方法可以通过单个查询来完成这两项工作呢比如以下MySQL查询:0 m* t, ^* B) S W1 p" J
ALTER TABLE tblName CHANGE COLUMN / J% O0 Z- L* t( S0 s/ C! |5 x
解决方案: - _; i! w8 E4 K2 v/ _! W* g
在PostgreSQL中,ALTER TABLE可采用一系列操作。
( n# k/ h9 i3 B4 g+ M+ x- G* qALTER TABLE [table] RENAME TO ;ALTER TABLE [table] ALTER COLUMN TYPE ;是相同的0 B+ W4 P" `) d
ALTER TABLE [table] ALTER COLUMN TYPE RENAME TO ;但是…为什么呢?IIRC重命名不会导致全表扫描,所以单独执行一个事务中的两个句子是没有好处的。你真的想解决什么问题? |
|
|
|
|
|