PostgreSQL:将列类型从布尔型更改为布尔型



我有布尔NULL类型的表t1和列c1。列中的所有值都为NULL。然而,PostgreSQL不允许我以这种方式更改列的类型:

ALTER TABLE "t1"
ALTER "c1" TYPE timestamp;
* ERROR: column "c1" cannot be cast to type timestamp without time zone

如何更改类型?感谢

如果列中的所有值都是null,只需添加USING NULL:就不会有困难的转换。

ALTER TABLE "t1"
ALTER "c1" TYPE timestamp USING NULL;

我认为你只需要给它一个时区。这对我有效:

ALTER TABLE t1
    ALTER COLUMN c1 SET DATA TYPE timestamp with time zone
    USING
        timestamp with time zone 'epoch';

最新更新