From cf67d606ae9a4649a49b291090a3e3448acf8c0b Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期四, 17 三月 2022 19:52:40 +0800 Subject: [PATCH] update 初步适配 postgres (代码生成两次导入有问题) --- ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml | 77 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 77 insertions(+), 0 deletions(-) diff --git a/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml b/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml index c2a39fd..b66b25d 100644 --- a/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml +++ b/ruoyi-generator/src/main/resources/mapper/generator/GenTableMapper.xml @@ -85,6 +85,28 @@ order by create_time desc </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isPostgerSql()"> + select table_name, table_comment, create_time, update_time + from ( + SELECT c.relname AS table_name, + obj_description(c.oid) AS table_comment, + CURRENT_TIMESTAMP AS create_time, + CURRENT_TIMESTAMP AS update_time + FROM pg_class c + LEFT JOIN pg_namespace n ON n.oid = c.relnamespace + WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"])) + AND c.relname != 'spatial_%'::text + AND n.nspname = 'public'::name + AND n.nspname <![CDATA[ <> ]]> ''::name + ) list_table + where table_name NOT LIKE 'xxl_job_%' AND table_name NOT LIKE 'gen_%' + AND table_name NOT IN (select table_name from gen_table) + <if test="genTable.tableName != null and genTable.tableName != ''"> + AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%')) + </if> + <if test="genTable.tableComment != null and genTable.tableComment != ''"> + AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}, '%')) + </if> + order by create_time desc </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isSqlServer()"> </if> @@ -121,6 +143,28 @@ order by create_time desc </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isPostgerSql()"> + select table_name, table_comment, create_time, update_time + from ( + SELECT c.relname AS table_name, + obj_description(c.oid) AS table_comment, + CURRENT_TIMESTAMP AS create_time, + CURRENT_TIMESTAMP AS update_time + FROM pg_class c + LEFT JOIN pg_namespace n ON n.oid = c.relnamespace + WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"])) + AND c.relname != 'spatial_%'::text + AND n.nspname = 'public'::name + AND n.nspname <![CDATA[ <> ]]> ''::name + ) list_table + where table_name NOT LIKE 'xxl_job_%' AND table_name NOT LIKE 'gen_%' + AND table_name NOT IN (select table_name from gen_table) + <if test="genTable.tableName != null and genTable.tableName != ''"> + AND lower(table_name) like lower(concat('%', #{genTable.tableName}, '%')) + </if> + <if test="genTable.tableComment != null and genTable.tableComment != ''"> + AND lower(table_comment) like lower(concat('%', #{genTable.tableComment}, '%')) + </if> + order by create_time desc </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isSqlServer()"> </if> @@ -149,6 +193,24 @@ </foreach> </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isPostgerSql()"> + select table_name, table_comment, create_time, update_time + from ( + SELECT c.relname AS table_name, + obj_description(c.oid) AS table_comment, + CURRENT_TIMESTAMP AS create_time, + CURRENT_TIMESTAMP AS update_time + FROM pg_class c + LEFT JOIN pg_namespace n ON n.oid = c.relnamespace + WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"])) + AND c.relname != 'spatial_%'::text + AND n.nspname = 'public'::name + AND n.nspname <![CDATA[ <> ]]> ''::name + ) list_table + where table_name NOT LIKE 'xxl_job_%' and table_name NOT LIKE 'gen_%' + and table_name in + <foreach collection="array" item="name" open="(" separator="," close=")"> + #{name} + </foreach> </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isSqlServer()"> </if> @@ -171,6 +233,21 @@ and lower(dt.table_name) = #{tableName} </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isPostgerSql()"> + select table_name, table_comment, create_time, update_time + from ( + SELECT c.relname AS table_name, + obj_description(c.oid) AS table_comment, + CURRENT_TIMESTAMP AS create_time, + CURRENT_TIMESTAMP AS update_time + FROM pg_class c + LEFT JOIN pg_namespace n ON n.oid = c.relnamespace + WHERE (c.relkind = ANY (ARRAY ['r'::"char", 'p'::"char"])) + AND c.relname != 'spatial_%'::text + AND n.nspname = 'public'::name + AND n.nspname <![CDATA[ <> ]]> ''::name + ) list_table + where table_name NOT LIKE 'xxl_job_%' and table_name NOT LIKE 'gen_%' + and table_name = #{tableName} </if> <if test="@com.ruoyi.common.helper.DataBaseHelper@isSqlServer()"> </if> -- Gitblit v1.9.3