信创国产化改造(改成人大金仓)
改造方案
1、pom文件添加postgresql jar包依赖,如下所示
<dependency><groupId>com.xx.common</groupId><artifactId>postgresql</artifactId><version>42.2.9</version><scope>system</scope><systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/postgresql-42.2.9.jar</systemPath></dependency>
2、配置文件中更改数据库连接驱动及人大金仓数据库相关配置,如下所示
jdbc_driver_class_mysql=org.postgresql.Driver
jdbc_url_mysql_master=jdbc:postgresql://ip:54322/db_manager
jdbc_user_mysql_master=yonghu
jdbc_password_mysql_master=mima
jdbc_url_mysql_slave=jdbc:postgresql://ip:54322/db_manager
jdbc_user_mysql_slave=yonghu
jdbc_password_mysql_slave=mima
注意事项
1、DATE_FORMAT(UPDATE_TIME,"%Y-%m-%d") 需改为 DATE_FORMAT(UPDATE_TIME,'%Y-%m-%d')
2、sql中用双引号括起来的要改成单引号
3、like '%${name}%' 需改为 like CONCAT('%',#{name},'%')
4、group分组需改为跟oracle语法一样
不能出现select type_name, customer_name from customer group by type_name
即只要是group by的字段,都要出现在select字段中。在select的字段中的除了用上聚合函数的,都需要出现在group by 字段中。
5、递归查询改为START WITH CONNECT BY
6、人大金仓数据库支持序列
CREATE SEQUENCE db_manager."AMOUNT_DETAILED_LIST_ID_seq"INCREMENT BY 1MINVALUE 1MAXVALUE 9223372036854775807START 1CACHE 1NO CYCLE;
7、内置表pg_tables和mysql的information_schema.tables类似
内置表sqlite_master