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() {

Reply via email to