# RuoYi-PostgreSQL
**Repository Path**: liuxue2611/RuoYi-PostgreSQL
## Basic Information
- **Project Name**: RuoYi-PostgreSQL
- **Description**: RuoYi的PostgreSQL版本。仅替换了数据库部分,尽量保持少的改动,以便和官方版本保持同步。
- **Primary Language**: Java
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 3
- **Created**: 2025-10-18
- **Last Updated**: 2025-10-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
RuoYi-PostgreSQL v4.7.7
## 简介
基于RuoYi 基础版本修改而来。
仅把mysql更换为了PostgreSQL,功能未改动,尽量以最小的改动完成对PostgreSQL数据库的支持。
## 主要改动点
1. 建表脚本:ry_20210924_pg.sql、quartz_pg.sql
sql目录下的新增的这两个目录sql\quartz、sql\ry,存放的是脚本合并过程中产生的文件,主要是为了方便和RuoYi主干版本对比改动点。
2. 新增了两个视图:gen_view_columns、gen_view_columns
因为代码生成模块使用了information_schema.columns、information_schema.tables,这两张表再postgresql和mysql中有差别。
为了尽量少的改动代码,这里创建了两个视图来代替information_schema.columns、information_schema.tables表再postgresql中的功能。
3. 修改代码中sql语法,主要是mapper.xml文件中SQL语句的改动,主要包括:
1. (sql中使用的sysdate)改为now()
2. replace into改为insert into on conflict
3. date_format 函数改为 to_char
4. FIND_IN_SET 改为 = ANY (string_to_array(ancestors,','))
5. cast(notice_content as char)改为convert_from(notice_content, 'UTF-8')
6. ifnull 函数改为 COALESCE
4. GenConstants.java 中COLUMNTYPE_NUMBER定义增加了postgresql中的"int2", "int4", "int8"类型
5. 数据库驱动包ruoyi-admin\pom.xml 更换为 postgresql
修改后的脚本在postgresql 17 版本下测试通过。