我尝试在PostgreSQL数据库中执行alter table column从TEXT
到INTEGER
的更改,如下所示:
ALTER TABLE analyzer_parser_event
ALTER COLUMN error_id TYPE INTEGER USING (error_id::integer);
问题是我已经有了error_id
可以是NULL
的现有数据。这将导致错误:
Statement : ALTER TABLE analyzer_parser_event
ALTER COLUMN error_id TYPE INTEGER USING (error_id::integer)
Caused by: org.postgresql.util.PSQLException: ERROR: invalid input syntax for type integer: "NULL"
我试着用NULLIF
指令,但它没有帮助我。
如何避免这个错误?
1条答案
按热度按时间ulmd4ohb1#
您可以尝试确定error_id是否为数值
评估结果,然后只需更新记录
你好,亚历杭德罗