From 36f59faf99ec82ec8f06944b8b596fbecc2752ce Mon Sep 17 00:00:00 2001 From: wenshao Date: Fri, 19 Aug 2011 09:42:21 +0000 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DSQL=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://code.alibabatech.com/svn/druid/trunk@536 b9813039-fb51-4c41-a8b9-e21c2acb5095 --- .../mysql/visitor/MySqlParameterizedOutputVisitor.java | 6 ++++++ .../oracle/visitor/OracleParameterizedOutputVisitor.java | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlParameterizedOutputVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlParameterizedOutputVisitor.java index bec84a1030..c3fef1d96e 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlParameterizedOutputVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlParameterizedOutputVisitor.java @@ -8,6 +8,7 @@ import com.alibaba.druid.sql.ast.expr.SQLInListExpr; import com.alibaba.druid.sql.ast.expr.SQLIntegerExpr; import com.alibaba.druid.sql.ast.expr.SQLLiteralExpr; import com.alibaba.druid.sql.ast.expr.SQLNCharExpr; +import com.alibaba.druid.sql.ast.expr.SQLNullExpr; import com.alibaba.druid.sql.ast.expr.SQLNumberExpr; import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr; import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlInsertStatement; @@ -41,6 +42,11 @@ public class MySqlParameterizedOutputVisitor extends MySqlOutputVisitor { return super.visit(x); } + + public boolean visit(SQLNullExpr x) { + print('?'); + return false; + } public SQLBinaryOpExpr merge(SQLBinaryOpExpr x) { if (x.getLeft() instanceof SQLLiteralExpr && x.getRight() instanceof SQLLiteralExpr) { diff --git a/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleParameterizedOutputVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleParameterizedOutputVisitor.java index 6af26d06cf..d3482dd18d 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleParameterizedOutputVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleParameterizedOutputVisitor.java @@ -8,6 +8,7 @@ import com.alibaba.druid.sql.ast.expr.SQLInListExpr; import com.alibaba.druid.sql.ast.expr.SQLIntegerExpr; import com.alibaba.druid.sql.ast.expr.SQLLiteralExpr; import com.alibaba.druid.sql.ast.expr.SQLNCharExpr; +import com.alibaba.druid.sql.ast.expr.SQLNullExpr; import com.alibaba.druid.sql.ast.expr.SQLNumberExpr; import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr; @@ -40,6 +41,11 @@ public class OracleParameterizedOutputVisitor extends OracleOutputVisitor { return super.visit(x); } + + public boolean visit(SQLNullExpr x) { + print('?'); + return false; + } public SQLBinaryOpExpr merge(SQLBinaryOpExpr x) { if (x.getLeft() instanceof SQLLiteralExpr && x.getRight() instanceof SQLLiteralExpr) {