From a42c8dbd9957034a2d3a0bce12b10e8bbacaf989 Mon Sep 17 00:00:00 2001 From: Looly Date: Fri, 4 Aug 2023 15:41:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DSqlUtil.formatSql=20=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E5=8C=96=E7=9A=84sql=E6=8D=A2=E8=A1=8C=E5=BC=82?= =?UTF-8?q?=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 3 ++- .../java/cn/hutool/db/sql/SqlFormatterTest.java | 13 ++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5147d4e9b..95d495134 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ # 🚀Changelog ------------------------------------------------------------------------------------------------------------- -# 5.8.22(2023-08-02) +# 5.8.22(2023-08-04) ### 🐣新特性 * 【core 】 NumberUtil.nullToZero增加重载(issue#I7PPD2@Gitee) @@ -11,6 +11,7 @@ ### 🐞Bug修复 * 【core 】 修复NumberUtil.toBigDecimal转换科学计数法问题(issue#3241@Github) * 【core 】 修复PathUtil.moveContent当target不存在时会报错问题(issue#3238@Github) +* 【db 】 修复SqlUtil.formatSql 格式化的sql换行异常(pr#3247@Github) ------------------------------------------------------------------------------------------------------------- # 5.8.21(2023-07-29) diff --git a/hutool-db/src/test/java/cn/hutool/db/sql/SqlFormatterTest.java b/hutool-db/src/test/java/cn/hutool/db/sql/SqlFormatterTest.java index 2fbd7c24b..953d4edbb 100755 --- a/hutool-db/src/test/java/cn/hutool/db/sql/SqlFormatterTest.java +++ b/hutool-db/src/test/java/cn/hutool/db/sql/SqlFormatterTest.java @@ -1,5 +1,6 @@ package cn.hutool.db.sql; +import org.junit.Ignore; import org.junit.Test; public class SqlFormatterTest { @@ -8,21 +9,23 @@ public class SqlFormatterTest { public void formatTest(){ // issue#I3XS44@Gitee // 测试是否空指针错误 - String sql = "(select 1 from dual) union all (select 1 from dual)"; + final String sql = "(select 1 from dual) union all (select 1 from dual)"; SqlFormatter.format(sql); } @Test + @Ignore public void testKeyword() { - String sql = "select * from `order`"; - String format = SqlFormatter.format(sql); + final String sql = "select * from `order`"; + final String format = SqlFormatter.format(sql); System.out.println(format); } @Test + @Ignore public void testSqlBuilderFormat() { - String sql = "SELECT `link_table_a`.`value_a` AS `link_table_a.value_a`,`link_table_a`.`id` AS `link_table_a.id`,`link_table_b`.`value_b` AS `link_table_b.value_b`,`link_table_c`.`id` AS `link_table_c.id`,`link_table_b`.`id` AS `link_table_b.id`,`link_table_c`.`value_c` AS `link_table_c.value_c` FROM `link_table_a` INNER JOIN `link_table_b` ON `link_table_a`.`table_b_id` = `link_table_b`.`id` INNER JOIN `link_table_c` ON `link_table_b`.`table_c_id` = `link_table_c`.`id`"; - String format = SqlBuilder.of(sql).format().build(); + final String sql = "SELECT `link_table_a`.`value_a` AS `link_table_a.value_a`,`link_table_a`.`id` AS `link_table_a.id`,`link_table_b`.`value_b` AS `link_table_b.value_b`,`link_table_c`.`id` AS `link_table_c.id`,`link_table_b`.`id` AS `link_table_b.id`,`link_table_c`.`value_c` AS `link_table_c.value_c` FROM `link_table_a` INNER JOIN `link_table_b` ON `link_table_a`.`table_b_id` = `link_table_b`.`id` INNER JOIN `link_table_c` ON `link_table_b`.`table_c_id` = `link_table_c`.`id`"; + final String format = SqlBuilder.of(sql).format().build(); System.out.println(format); } }