This is an automated email from the ASF dual-hosted git repository. chengzhang pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push: new 211337b9562 Quote column in PipelineSQLSegmentBuilder. (#34326) 211337b9562 is described below commit 211337b956215456934f0cf1defb73d8ceabf1b6 Author: Cong Hu <iamhuc...@gmail.com> AuthorDate: Mon Jan 13 09:36:11 2025 +0800 Quote column in PipelineSQLSegmentBuilder. (#34326) --- .../core/sqlbuilder/segment/PipelineSQLSegmentBuilder.java | 2 +- .../sqlbuilder/segment/PipelineSQLSegmentBuilderTest.java | 14 +++++++------- .../mysql/sqlbuilder/MySQLPipelineSQLBuilderTest.java | 2 +- .../sqlbuilder/OpenGaussPipelineSQLBuilderTest.java | 2 +- .../sqlbuilder/PostgreSQLPipelineSQLBuilderTest.java | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilder.java b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilder.java index c7485ead0e4..2327ffb7a34 100644 --- a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilder.java +++ b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilder.java @@ -41,7 +41,7 @@ public final class PipelineSQLSegmentBuilder { * @return escaped identifier */ public String getEscapedIdentifier(final String identifier) { - return dialectDatabaseMetaData.isReservedWord(identifier) ? dialectDatabaseMetaData.getQuoteCharacter().wrap(identifier) : identifier; + return "*".equals(identifier) ? identifier : dialectDatabaseMetaData.getQuoteCharacter().wrap(identifier); } /** diff --git a/kernel/data-pipeline/core/src/test/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilderTest.java b/kernel/data-pipeline/core/src/test/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilderTest.java index 2fc48bae01b..ac09cc6e990 100644 --- a/kernel/data-pipeline/core/src/test/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilderTest.java +++ b/kernel/data-pipeline/core/src/test/java/org/apache/shardingsphere/data/pipeline/core/sqlbuilder/segment/PipelineSQLSegmentBuilderTest.java @@ -38,24 +38,24 @@ class PipelineSQLSegmentBuilderTest { @Test void assertGetUnescapedIdentifier() { - assertThat(mysqlBuilder.getEscapedIdentifier("SELECT1"), is("SELECT1")); + assertThat(mysqlBuilder.getEscapedIdentifier("SELECT1"), is("`SELECT1`")); } @Test void assertGetQualifiedTableNameWithUnsupportedSchema() { - assertThat(mysqlBuilder.getQualifiedTableName("foo_schema", "foo_tbl"), is("foo_tbl")); - assertThat(mysqlBuilder.getQualifiedTableName(new QualifiedTable("foo_schema", "foo_tbl")), is("foo_tbl")); + assertThat(mysqlBuilder.getQualifiedTableName("foo_schema", "foo_tbl"), is("`foo_tbl`")); + assertThat(mysqlBuilder.getQualifiedTableName(new QualifiedTable("foo_schema", "foo_tbl")), is("`foo_tbl`")); } @Test void assertGetQualifiedTableNameWithSupportedSchema() { - assertThat(postgresqlBuilder.getQualifiedTableName("foo_schema", "foo_tbl"), is("foo_schema.foo_tbl")); - assertThat(postgresqlBuilder.getQualifiedTableName(new QualifiedTable("foo_schema", "foo_tbl")), is("foo_schema.foo_tbl")); + assertThat(postgresqlBuilder.getQualifiedTableName("foo_schema", "foo_tbl"), is("\"foo_schema\".\"foo_tbl\"")); + assertThat(postgresqlBuilder.getQualifiedTableName(new QualifiedTable("foo_schema", "foo_tbl")), is("\"foo_schema\".\"foo_tbl\"")); } @Test void assertGetQualifiedTableNameWithSupportedSchemaAndNullSchema() { - assertThat(postgresqlBuilder.getQualifiedTableName(null, "foo_tbl"), is("foo_tbl")); - assertThat(postgresqlBuilder.getQualifiedTableName(new QualifiedTable(null, "foo_tbl")), is("foo_tbl")); + assertThat(postgresqlBuilder.getQualifiedTableName(null, "foo_tbl"), is("\"foo_tbl\"")); + assertThat(postgresqlBuilder.getQualifiedTableName(new QualifiedTable(null, "foo_tbl")), is("\"foo_tbl\"")); } } diff --git a/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/sqlbuilder/MySQLPipelineSQLBuilderTest.java b/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/sqlbuilder/MySQLPipelineSQLBuilderTest.java index 6d45e8198a8..40fcf060aee 100644 --- a/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/sqlbuilder/MySQLPipelineSQLBuilderTest.java +++ b/kernel/data-pipeline/dialect/mysql/src/test/java/org/apache/shardingsphere/data/pipeline/mysql/sqlbuilder/MySQLPipelineSQLBuilderTest.java @@ -51,7 +51,7 @@ class MySQLPipelineSQLBuilderTest { void assertBuildInsertSQLOnDuplicateClause() { Optional<String> actual = sqlBuilder.buildInsertOnDuplicateClause(createDataRecord()); assertTrue(actual.isPresent()); - assertThat(actual.get(), is("ON DUPLICATE KEY UPDATE id=VALUES(id),sc=VALUES(sc),c1=VALUES(c1),c2=VALUES(c2),c3=VALUES(c3)")); + assertThat(actual.get(), is("ON DUPLICATE KEY UPDATE `id`=VALUES(`id`),`sc`=VALUES(`sc`),`c1`=VALUES(`c1`),`c2`=VALUES(`c2`),`c3`=VALUES(`c3`)")); } private DataRecord createDataRecord() { diff --git a/kernel/data-pipeline/dialect/opengauss/src/test/java/org/apache/shardingsphere/data/pipeline/opengauss/sqlbuilder/OpenGaussPipelineSQLBuilderTest.java b/kernel/data-pipeline/dialect/opengauss/src/test/java/org/apache/shardingsphere/data/pipeline/opengauss/sqlbuilder/OpenGaussPipelineSQLBuilderTest.java index 4c17d23691a..b30f6341505 100644 --- a/kernel/data-pipeline/dialect/opengauss/src/test/java/org/apache/shardingsphere/data/pipeline/opengauss/sqlbuilder/OpenGaussPipelineSQLBuilderTest.java +++ b/kernel/data-pipeline/dialect/opengauss/src/test/java/org/apache/shardingsphere/data/pipeline/opengauss/sqlbuilder/OpenGaussPipelineSQLBuilderTest.java @@ -56,7 +56,7 @@ class OpenGaussPipelineSQLBuilderTest { void assertBuildInsertOnDuplicateClause() { Optional<String> actual = sqlBuilder.buildInsertOnDuplicateClause(createDataRecord()); assertTrue(actual.isPresent()); - assertThat(actual.get(), is("ON DUPLICATE KEY UPDATE c0=EXCLUDED.c0,c1=EXCLUDED.c1,c2=EXCLUDED.c2,c3=EXCLUDED.c3")); + assertThat(actual.get(), is("ON DUPLICATE KEY UPDATE \"c0\"=EXCLUDED.\"c0\",\"c1\"=EXCLUDED.\"c1\",\"c2\"=EXCLUDED.\"c2\",\"c3\"=EXCLUDED.\"c3\"")); } private DataRecord createDataRecord() { diff --git a/kernel/data-pipeline/dialect/postgresql/src/test/java/org/apache/shardingsphere/data/pipeline/postgresql/sqlbuilder/PostgreSQLPipelineSQLBuilderTest.java b/kernel/data-pipeline/dialect/postgresql/src/test/java/org/apache/shardingsphere/data/pipeline/postgresql/sqlbuilder/PostgreSQLPipelineSQLBuilderTest.java index dd63fce0186..157c22b54ef 100644 --- a/kernel/data-pipeline/dialect/postgresql/src/test/java/org/apache/shardingsphere/data/pipeline/postgresql/sqlbuilder/PostgreSQLPipelineSQLBuilderTest.java +++ b/kernel/data-pipeline/dialect/postgresql/src/test/java/org/apache/shardingsphere/data/pipeline/postgresql/sqlbuilder/PostgreSQLPipelineSQLBuilderTest.java @@ -58,7 +58,7 @@ class PostgreSQLPipelineSQLBuilderTest { void assertBuildInsertSQLOnDuplicateClause() { Optional<String> actual = sqlBuilder.buildInsertOnDuplicateClause(createDataRecord()); assertTrue(actual.isPresent()); - assertThat(actual.get(), is("ON CONFLICT (order_id) DO UPDATE SET user_id=EXCLUDED.user_id,status=EXCLUDED.status")); + assertThat(actual.get(), is("ON CONFLICT (\"order_id\") DO UPDATE SET \"user_id\"=EXCLUDED.\"user_id\",\"status\"=EXCLUDED.\"status\"")); } private DataRecord createDataRecord() {