例如有一张表名叫recharge_package,表中已经存在数据。
其中有一op_name列,其数据类型是character varying(10),现想将其修改为numeric(7,2),
那么如下即可:
alter table recharge_package alter COLUMN op_name type numeric(7,2) using op_name::numeric(7,2);
系统会自动转换数据的类型。如果转换失败,则修改不会成功。
例如存在非数字格式的字符串,肯定是无法转换为数字的。 会报如下错误:
ERROR: 错误: 无效的类型 numeric 输入语法: "aaaaaaaaaaa" SQL 状态:22P02