Loading sharding-core/sharding-core-optimize/src/main/java/org/apache/shardingsphere/core/optimize/result/insert/InsertOptimizeResultUnit.java +3 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import lombok.Getter; import lombok.RequiredArgsConstructor; import org.apache.shardingsphere.core.exception.ShardingException; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLIgnoreExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLNumberExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLPlaceholderExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLTextExpression; Loading Loading @@ -132,6 +133,8 @@ public abstract class InsertOptimizeResultUnit { return "?"; } else if (sqlExpression instanceof SQLTextExpression) { return String.format("'%s'", ((SQLTextExpression) sqlExpression).getText()); } else if (sqlExpression instanceof SQLIgnoreExpression) { return ((SQLIgnoreExpression) sqlExpression).getExpression(); } else { return String.valueOf(((SQLNumberExpression) sqlExpression).getNumber()); } Loading sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/sql/segment/dml/expr/LiteralExpressionSegment.java +2 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import lombok.RequiredArgsConstructor; import lombok.Setter; import org.apache.shardingsphere.core.parse.old.lexer.token.DefaultKeyword; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLIgnoreExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLNumberExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLTextExpression; Loading Loading @@ -55,6 +56,6 @@ public final class LiteralExpressionSegment implements ExpressionSegment { if (DefaultKeyword.NULL.name().equalsIgnoreCase(value)) { return new SQLNumberExpression(null); } return new SQLTextExpression(value); return new SQLIgnoreExpression(value); } } sharding-core/sharding-core-parse/sharding-core-parse-test/src/test/resources/parser/insert.xml +20 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,26 @@ </or-condition> </parser-result> <parser-result sql-case-id="insert_with_now_function" parameters="1, 1, 'init'"> <tables> <table name="t_order" /> </tables> <tokens> <table-token start-index="12" table-name="t_order" length="7" /> <insert-values-token begin-position="20" /> </tokens> <or-condition> <and-condition> <condition column-name="order_id" table-name="t_order" operator="EQUAL"> <value index="0" literal="1" type="int" /> </condition> <condition column-name="user_id" table-name="t_order" operator="EQUAL"> <value index="1" literal="1" type="int" /> </condition> </and-condition> </or-condition> </parser-result> <parser-result sql-case-id="insert_without_parameters"> <tables> <table name="t_order" /> Loading sharding-core/sharding-core-parse/sharding-core-parse-test/src/test/resources/parser/select.xml +2 −2 Original line number Diff line number Diff line Loading @@ -866,7 +866,7 @@ </aggregation-select-items> </select-items> </parser-result> <parser-result sql-case-id="select_with_coloumns_in_paren"> <parser-result sql-case-id="select_with_row_subquery_without_row"> <tables> <table name="t_order"/> </tables> Loading @@ -874,7 +874,7 @@ <table-token start-index="14" table-name="t_order" length="7" /> </tokens> </parser-result> <parser-result sql-case-id="select_with_coloumns_in_row"> <parser-result sql-case-id="select_with_row_subquery"> <tables> <table name="t_order"/> </tables> Loading sharding-jdbc/sharding-jdbc-core/src/test/resources/integrate/cases/dml/dml-integrate-test-cases.xml +5 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,11 @@ <assertion parameters="2:int, 2:int, insert:String" expected-data-file="insert_for_order_2.xml" /> </dml-test-case> <dml-test-case sql-case-id="insert_with_now_function"> <assertion parameters="1:int, 1:int, insert:String" expected-data-file="insert_for_order_1.xml" /> <assertion parameters="2:int, 2:int, insert:String" expected-data-file="insert_for_order_2.xml" /> </dml-test-case> <dml-test-case sql-case-id="insert_without_parameters"> <assertion expected-data-file="insert_for_order_1.xml" /> </dml-test-case> Loading Loading
sharding-core/sharding-core-optimize/src/main/java/org/apache/shardingsphere/core/optimize/result/insert/InsertOptimizeResultUnit.java +3 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import lombok.Getter; import lombok.RequiredArgsConstructor; import org.apache.shardingsphere.core.exception.ShardingException; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLIgnoreExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLNumberExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLPlaceholderExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLTextExpression; Loading Loading @@ -132,6 +133,8 @@ public abstract class InsertOptimizeResultUnit { return "?"; } else if (sqlExpression instanceof SQLTextExpression) { return String.format("'%s'", ((SQLTextExpression) sqlExpression).getText()); } else if (sqlExpression instanceof SQLIgnoreExpression) { return ((SQLIgnoreExpression) sqlExpression).getExpression(); } else { return String.valueOf(((SQLNumberExpression) sqlExpression).getNumber()); } Loading
sharding-core/sharding-core-parse/sharding-core-parse-common/src/main/java/org/apache/shardingsphere/core/parse/antlr/sql/segment/dml/expr/LiteralExpressionSegment.java +2 −1 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import lombok.RequiredArgsConstructor; import lombok.Setter; import org.apache.shardingsphere.core.parse.old.lexer.token.DefaultKeyword; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLIgnoreExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLNumberExpression; import org.apache.shardingsphere.core.parse.old.parser.expression.SQLTextExpression; Loading Loading @@ -55,6 +56,6 @@ public final class LiteralExpressionSegment implements ExpressionSegment { if (DefaultKeyword.NULL.name().equalsIgnoreCase(value)) { return new SQLNumberExpression(null); } return new SQLTextExpression(value); return new SQLIgnoreExpression(value); } }
sharding-core/sharding-core-parse/sharding-core-parse-test/src/test/resources/parser/insert.xml +20 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,26 @@ </or-condition> </parser-result> <parser-result sql-case-id="insert_with_now_function" parameters="1, 1, 'init'"> <tables> <table name="t_order" /> </tables> <tokens> <table-token start-index="12" table-name="t_order" length="7" /> <insert-values-token begin-position="20" /> </tokens> <or-condition> <and-condition> <condition column-name="order_id" table-name="t_order" operator="EQUAL"> <value index="0" literal="1" type="int" /> </condition> <condition column-name="user_id" table-name="t_order" operator="EQUAL"> <value index="1" literal="1" type="int" /> </condition> </and-condition> </or-condition> </parser-result> <parser-result sql-case-id="insert_without_parameters"> <tables> <table name="t_order" /> Loading
sharding-core/sharding-core-parse/sharding-core-parse-test/src/test/resources/parser/select.xml +2 −2 Original line number Diff line number Diff line Loading @@ -866,7 +866,7 @@ </aggregation-select-items> </select-items> </parser-result> <parser-result sql-case-id="select_with_coloumns_in_paren"> <parser-result sql-case-id="select_with_row_subquery_without_row"> <tables> <table name="t_order"/> </tables> Loading @@ -874,7 +874,7 @@ <table-token start-index="14" table-name="t_order" length="7" /> </tokens> </parser-result> <parser-result sql-case-id="select_with_coloumns_in_row"> <parser-result sql-case-id="select_with_row_subquery"> <tables> <table name="t_order"/> </tables> Loading
sharding-jdbc/sharding-jdbc-core/src/test/resources/integrate/cases/dml/dml-integrate-test-cases.xml +5 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,11 @@ <assertion parameters="2:int, 2:int, insert:String" expected-data-file="insert_for_order_2.xml" /> </dml-test-case> <dml-test-case sql-case-id="insert_with_now_function"> <assertion parameters="1:int, 1:int, insert:String" expected-data-file="insert_for_order_1.xml" /> <assertion parameters="2:int, 2:int, insert:String" expected-data-file="insert_for_order_2.xml" /> </dml-test-case> <dml-test-case sql-case-id="insert_without_parameters"> <assertion expected-data-file="insert_for_order_1.xml" /> </dml-test-case> Loading