pdmaner从pg数据库导入表结构,无法筛选schema的问题处理

pdmaner从pg数据库导入表结构,无法筛选schema的问题处理

  • 一、问题描述
  • 二、问题解决
    • 2.1.后端工程搭建并修复问题
    • 2.1.1 找到问题类
    • 2.1.2 调整问题代码
    • 2.2 替换原始程序
      • 2.2.1 打包
      • 2.2.2 替换

一、问题描述

pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第1张图片
如图,不同schame下同名的表全部显示,我使用的版本是4.7.0。
一开始尝试使用currentSchema,但无效。

jdbc:postgresql://ip:端口/数据库?currentSchema=xxschema

后来找到官方仓库,检索发现已有人提出过问题。
官方仓库地址: https://gitee.com/robergroup/pdmaner
pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第2张图片
pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第3张图片
按该回答使用此配置也不生效,实际未修复此问题。

jdbc:postgresql://IP地址:端口号/数据库名?metaFromSQL=1&schemaOwner=数据库名

二、问题解决

2.1.后端工程搭建并修复问题

下载地址: https://gitee.com/robergroup/chiner-java.git

2.1.1 找到问题类

DBDialectPostgreSQLByQuery.java
pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第4张图片

2.1.2 调整问题代码

pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第5张图片
新增红框中的一行代码,如下

" join pg_namespace e on e.nspname = tb.table_schema and e.oid = c.relnamespace"+ //筛选schema

pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第6张图片
解决字段重复问题

" join pg_namespace e on e.nspname = col.table_schema and e.oid = c.relnamespace\n "+

2.2 替换原始程序

2.2.1 打包

执行命令

mvn package -DskipTests

pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第7张图片

2.2.2 替换

进入安装目录

PDManer-win_v4.7.0\win-ia32-unpacked\resources\app.asar.unpacked\build\jar

pdmaner从pg数据库导入表结构,无法筛选schema的问题处理_第8张图片

将新编译的jar替换该目录文件

你可能感兴趣的:(数据库)