未验证 提交 a1cac7e7 编写于 作者: J JingShang Lu 提交者: GitHub

fix #6729 (#6961)

上级 140a6cef
......@@ -27,7 +27,12 @@
<output sql="INSERT INTO t_account_0 (account_id, amount, status) VALUES (100, 1000, 'OK') ON DUPLICATE KEY UPDATE amount = VALUES(amount)" />
</rewrite-assertion>
<rewrite-assertion id="insert_values_with_columns_without_id_for_parameters">
<rewrite-assertion id="insert_values_with_columns_without_id_for_parameters" db-type="MySQL">
<input sql="INSERT INTO t_account (amount, status) VALUES (?, ?)" parameters="1000, OK" />
<output sql="INSERT INTO t_account_1 (amount, status, account_id) VALUES (?, ?, ?)" parameters="1000, OK, 1" />
</rewrite-assertion>
<rewrite-assertion id="insert_values_with_columns_without_id_for_parameters_for_postgresql" db-type="PostgreSQL">
<input sql="INSERT INTO t_account (amount, status) VALUES (?, ?)" parameters="1000, OK" />
<output sql="INSERT INTO t_account_1 (amount, status, account_id) VALUES (?, ?, ?)" parameters="1000, OK, 1" />
</rewrite-assertion>
......
......@@ -206,7 +206,7 @@ public final class PostgreSQLDMLVisitor extends PostgreSQLVisitor implements DML
result.addAll(expressions);
}
Collection<ExpressionSegment> expressions = createInsertValuesSegments(ctx.exprList());
InsertValuesSegment insertValuesSegment = new InsertValuesSegment(ctx.exprList().start.getStartIndex(), ctx.exprList().stop.getStopIndex(), (List<ExpressionSegment>) expressions);
InsertValuesSegment insertValuesSegment = new InsertValuesSegment(ctx.LP_().getSymbol().getStartIndex(), ctx.RP_().getSymbol().getStopIndex(), (List<ExpressionSegment>) expressions);
result.add(insertValuesSegment);
return result;
}
......@@ -217,9 +217,8 @@ public final class PostgreSQLDMLVisitor extends PostgreSQLVisitor implements DML
Collection<ExpressionSegment> tmpResult = createInsertValuesSegments(ctx.exprList());
result.addAll(tmpResult);
}
visit(ctx.aExpr());
CommonExpressionSegment expressionSegment = new CommonExpressionSegment(ctx.aExpr().start.getStartIndex(), ctx.aExpr().stop.getStopIndex(), ctx.aExpr().getText());
result.add(expressionSegment);
ExpressionSegment expr = (ExpressionSegment) visit(ctx.aExpr());
result.add(expr);
return result;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册