springboot数据库从oracle迁移到PostGreSql 总结

1:系统配置文件:

spring:
  datasource:
    druid:
      url: jdbc:postgresql://localhiost:5432/test
      username: postgres
      password: 123456
      driver-class-name: org.postgresql.Driver
      dBType: PostgreSQL

2:myBatis的循环insert

 INSERT INTO USER_ROLE
     (ID,"CREATED_ON","CREATED_BY","IS_DELETED","GROUP_CODE","NAME","ORG_ID","ROLE_ID","CODE","PARENT_ID","GROUP_ID")
        VALUES
        <foreach collection="userRoleListParam" item="e" index="index" separator="">
            ( #{e.ID}, #{e.CREATED_ON}, #{e.CREATED_BY}, #{e.IS_DELETED}, #{e.GROUP_CODE}, #{e.NAME}, #{e.ORG_ID}, #{e.ROLE_ID}, #{e.CODE}, #{e.PARENT_ID}, #{e.GROUP_ID} )
            <if test="index != (userRoleListParam.size() - 1)">
                ,
            </if>
            <if test="index == (userRoleListParam.size() - 1)">
                ;
            </if>

        </foreach>

3:pg区分大小写,字符串和int,所以在传参时需要给定类型。

4:从oracle迁移到pg时,可以借助PDMan最新版本的:CHINER元数建模中的从数据库导入到工具,然后拿出PostGre脚本进行一下简单的修改或者直接执行。

4:将pg数据库的表和数据导出成sql语句。

     (1:cmd进入pg安装的bin目录:C:\PostgreSQL\11\bin

      (2:执行 :pg_dump -U postgres --column-inserts test> C:dum.sql 

        (postgres 账号名 test默认数据库名  C:dum.sql 导出的sql地址)

        (3:navicat15 登录需要迁移进的pg数据库,直接执行sql即可。

5:如果系统需要同时兼容oracle和pg,建议建表时除了id字段使用小写外其余使用大写,然后统一将系统中的字段改成 带双引号的大写。如果涉及oracle的特殊语法的,可以根据数据库类型去使用不同的mapper.xml。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值