我有整数数据类型的列,我想将其更改为默认值为 0.0 的双精度。
ALTER TABLE public.agents ALTER COLUMN total_number_of_points TYPE DOUBLE PRECISION DEFAULT 0.0;
但是上面的SQL抛出了一个错误:
错误:语法错误在"默认"第 1 行或附近:...卢恩 total_number_of_points类型双精度默认值 0...。
所以Postgresql 9+,是不允许设置默认值还是我在这里做错了什么?
您需要
在DEFAULT
之前使用SET
:
ALTER TABLE public.agents
ALTER COLUMN total_number_of_points TYPE DOUBLE PRECISION SET DEFAULT 0.0;