想把dept_id字段varchar类型修改为Integer类型

执行以下语句报错:

alter table staff alter column dept_id type int

alter table staff alter column dept_id type int
> 错误:  字段 "dept_id" 不能自动转换成类型 integer
HINT:  您可能需要指定"USING dept_id::integer"。

因为int转varchar有隐式转换,故可以自动转换过去。把varchar变为int,在没有隐式转换下,就需要指定Using来显示转换。

alter table staff alter column dept_id type int USING dept_id::int;

如果表中有记录,需要删掉再执行。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐