From c66e08cf6b9b23f33c5e64ad111cbb9681b65f3f Mon Sep 17 00:00:00 2001 From: haocao Date: Mon, 2 Apr 2018 07:27:47 +0800 Subject: [PATCH] For #628: add update sql support for :: grammars. --- .../parsing/parser/clause/UpdateSetItemsClauseParser.java | 7 +++++++ sharding-core/src/test/resources/parser/update.xml | 2 -- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/sharding-core/src/main/java/io/shardingjdbc/core/parsing/parser/clause/UpdateSetItemsClauseParser.java b/sharding-core/src/main/java/io/shardingjdbc/core/parsing/parser/clause/UpdateSetItemsClauseParser.java index 17300d173b106..a9b8d44ffb7cc 100644 --- a/sharding-core/src/main/java/io/shardingjdbc/core/parsing/parser/clause/UpdateSetItemsClauseParser.java +++ b/sharding-core/src/main/java/io/shardingjdbc/core/parsing/parser/clause/UpdateSetItemsClauseParser.java @@ -58,6 +58,7 @@ private void parseSetItem(final DMLStatement updateStatement) { parseSetColumn(updateStatement); lexerEngine.skipIfEqual(Symbol.EQ, Symbol.COLON_EQ); parseSetValue(updateStatement); + skipsDoubleColon(); } private void parseSetColumn(final DMLStatement updateStatement) { @@ -79,4 +80,10 @@ private void parseSetColumn(final DMLStatement updateStatement) { private void parseSetValue(final DMLStatement updateStatement) { basicExpressionParser.parse(updateStatement); } + + private void skipsDoubleColon() { + if (lexerEngine.skipIfEqual(Symbol.DOUBLE_COLON)) { + lexerEngine.nextToken(); + } + } } diff --git a/sharding-core/src/test/resources/parser/update.xml b/sharding-core/src/test/resources/parser/update.xml index 7b31890ce42d7..44df0e74bb6fe 100644 --- a/sharding-core/src/test/resources/parser/update.xml +++ b/sharding-core/src/test/resources/parser/update.xml @@ -34,7 +34,6 @@ -