【发布时间】:2017-10-11 02:20:20
【问题描述】:
我想提高包含 10+ 百万条记录的大型表中数字列的精度。 ALTER TABLE mytable ALTER COLUMN mycolumn TYPE numeric(15,6) 的标准方式将锁定表。这是一个高度事务性的表。有没有办法在不锁定表、不重新创建表、复制数据和重命名/交换表的情况下做到这一点?我目前正在运行 dockerized postgres 9.5
【问题讨论】:
-
原始列定义是什么?当您不更改 precision 时,该表将 not 被重写,例如从
(12,6)到(15,6)不会发生重写。