MySql教程

项目的Mysql数据库迁移到Postgresql遇到的坑

本文主要是介绍项目的Mysql数据库迁移到Postgresql遇到的坑,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1 Postgresql不能boolean自动转换成smallint

使用管理员账号运行一下方法。

CREATE OR REPLACE FUNCTION boolean_to_smallint(b boolean) RETURNS smallint AS $$
    BEGIN
            RETURN (b::boolean)::bool::int;
    END;
$$LANGUAGE plpgsql;
 
CREATE CAST (boolean AS smallint) WITH FUNCTION boolean_to_smallint(boolean) AS implicit;

2 to_date报类型错误

添加::text

select  to_date(createddate::text,'YYYY-MM-DD') from n_url_test;

3 主键自动递增无效

主键这样配置,如果有旧数据可能会报主键重复,我是多点几次,让主键++到正确的主键。
在这里插入图片描述

4 find_in_set不存在

方法效果相同的写法:

CAST(#{deptId} AS VARCHAR) = ANY(STRING_TO_ARRAY(ancestors, ','))
这篇关于项目的Mysql数据库迁移到Postgresql遇到的坑的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!