diff --git a/src/main/java/com/alibaba/druid/sql/ast/expr/SQLVariantRefExpr.java b/src/main/java/com/alibaba/druid/sql/ast/expr/SQLVariantRefExpr.java index 1e6928b022..8f4e67161a 100644 --- a/src/main/java/com/alibaba/druid/sql/ast/expr/SQLVariantRefExpr.java +++ b/src/main/java/com/alibaba/druid/sql/ast/expr/SQLVariantRefExpr.java @@ -30,7 +30,7 @@ public class SQLVariantRefExpr extends SQLExprImpl { private boolean global = false; - private boolean hasSessionBefore = false; + private boolean session = false; private int index = -1; @@ -43,10 +43,10 @@ public class SQLVariantRefExpr extends SQLExprImpl { this.global = global; } - public SQLVariantRefExpr(String name, boolean global,boolean hasSessionBefore){ + public SQLVariantRefExpr(String name, boolean global,boolean session){ this.name = name; this.global = global; - this.hasSessionBefore = hasSessionBefore; + this.session = session; } public SQLVariantRefExpr(){ @@ -74,12 +74,12 @@ public class SQLVariantRefExpr extends SQLExprImpl { } - public boolean isHasSessionBefore() { - return hasSessionBefore; + public boolean isSession() { + return session; } - public void setHasSessionBefore(boolean hasSessionBefore) { - this.hasSessionBefore = hasSessionBefore; + public void setSession(boolean session) { + this.session = session; } @Override diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlSetTransactionStatement.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlSetTransactionStatement.java index e731b84c73..5897d6a23f 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlSetTransactionStatement.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlSetTransactionStatement.java @@ -29,15 +29,15 @@ public class MySqlSetTransactionStatement extends MySqlStatementImpl { private String accessModel; - private Boolean hasSessionBefore; + private Boolean session; - public Boolean getHasSessionBefore() { - return hasSessionBefore; + public Boolean getSession() { + return session; } - public void setHasSessionBefore(Boolean hasSessionBefore) { - this.hasSessionBefore = hasSessionBefore; + public void setSession(Boolean session) { + this.session = session; } public void accept0(MySqlASTVisitor visitor) { diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/parser/MySqlStatementParser.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/parser/MySqlStatementParser.java index 024c4e2949..95597a546e 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/parser/MySqlStatementParser.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/parser/MySqlStatementParser.java @@ -2609,20 +2609,20 @@ public class MySqlStatementParser extends SQLStatementParser { } Boolean global = null; - Boolean sessionBefore = null; + Boolean session = null; if (lexer.identifierEquals(GLOBAL)) { global = Boolean.TRUE; lexer.nextToken(); } else if (lexer.identifierEquals(SESSION)) { global = Boolean.FALSE; - sessionBefore = Boolean.TRUE; + session = Boolean.TRUE; lexer.nextToken(); } if (lexer.identifierEquals("TRANSACTION")) { MySqlSetTransactionStatement stmt = new MySqlSetTransactionStatement(); stmt.setGlobal(global); - stmt.setHasSessionBefore(sessionBefore); + stmt.setSession(session); lexer.nextToken(); if (lexer.identifierEquals("ISOLATION")) { @@ -2722,14 +2722,14 @@ public class MySqlStatementParser extends SQLStatementParser { parseAssignItems(stmt.getItems(), stmt); - if (global != null && global.booleanValue()) { + if (global != null && global) { SQLVariantRefExpr varRef = (SQLVariantRefExpr) stmt.getItems().get(0).getTarget(); varRef.setGlobal(true); } - if(sessionBefore != null && sessionBefore.booleanValue()){ + if(session != null && session){ SQLVariantRefExpr varRef = (SQLVariantRefExpr) stmt.getItems().get(0).getTarget(); - varRef.setHasSessionBefore(true); + varRef.setSession(true); } if (lexer.token() == Token.HINT) { diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java index cfc156045f..ce85349fe7 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java @@ -655,7 +655,7 @@ public class MySqlOutputVisitor extends SQLASTOutputVisitor implements MySqlASTV if (x.isGlobal()) { print0("@@global."); - }else if(x.isHasSessionBefore()){ + }else if(x.isSession()){ print0("@@session."); } diff --git a/src/test/java/com/alibaba/druid/mysql/MysqlCreateTableTest.java b/src/test/java/com/alibaba/druid/mysql/MysqlVarantRefTest.java similarity index 82% rename from src/test/java/com/alibaba/druid/mysql/MysqlCreateTableTest.java rename to src/test/java/com/alibaba/druid/mysql/MysqlVarantRefTest.java index 452d3f8fe0..c4afc0401c 100644 --- a/src/test/java/com/alibaba/druid/mysql/MysqlCreateTableTest.java +++ b/src/test/java/com/alibaba/druid/mysql/MysqlVarantRefTest.java @@ -16,7 +16,7 @@ import java.util.List; /** * Created by szf on 2017/11/16. */ -public class MysqlCreateTableTest { +public class MysqlVarantRefTest { @Test public void test(){ @@ -28,8 +28,8 @@ public class MysqlCreateTableTest { SQLVariantRefExpr resultExpr = (SQLVariantRefExpr)result.getItems().get(0).getTarget(); SQLVariantRefExpr resultExpr2 = (SQLVariantRefExpr)result.getItems().get(1).getTarget(); - Assert.assertTrue(resultExpr.isHasSessionBefore()); - Assert.assertTrue(resultExpr2.isHasSessionBefore()); + Assert.assertTrue(resultExpr.isSession()); + Assert.assertTrue(resultExpr2.isSession()); } @Test @@ -54,7 +54,7 @@ public class MysqlCreateTableTest { MySqlSetTransactionStatement x = (MySqlSetTransactionStatement)stmtList.get(0); - Assert.assertTrue(x.getHasSessionBefore()); + Assert.assertTrue(x.getSession()); } @Test @@ -65,7 +65,7 @@ public class MysqlCreateTableTest { MySqlSetTransactionStatement x = (MySqlSetTransactionStatement)stmtList.get(0); - Assert.assertTrue(x.getHasSessionBefore()==null); + Assert.assertTrue(x.getSession() == null); } @Test @@ -78,8 +78,8 @@ public class MysqlCreateTableTest { SQLVariantRefExpr resultExpr = (SQLVariantRefExpr)result.getItems().get(0).getTarget(); SQLVariantRefExpr resultExpr2 = (SQLVariantRefExpr)result.getItems().get(1).getTarget(); - Assert.assertTrue(resultExpr.isHasSessionBefore()); - Assert.assertTrue(!resultExpr2.isHasSessionBefore()); + Assert.assertTrue(resultExpr.isSession()); + Assert.assertTrue(!resultExpr2.isSession()); } @@ -93,8 +93,8 @@ public class MysqlCreateTableTest { SQLVariantRefExpr resultExpr = (SQLVariantRefExpr)result.getItems().get(0).getTarget(); SQLVariantRefExpr resultExpr2 = (SQLVariantRefExpr)result.getItems().get(1).getTarget(); - Assert.assertTrue(!resultExpr.isHasSessionBefore()); - Assert.assertTrue(!resultExpr2.isHasSessionBefore()); + Assert.assertTrue(!resultExpr.isSession()); + Assert.assertTrue(!resultExpr2.isSession()); } @@ -108,8 +108,8 @@ public class MysqlCreateTableTest { SQLVariantRefExpr resultExpr = (SQLVariantRefExpr)result.getItems().get(0).getTarget(); SQLVariantRefExpr resultExpr2 = (SQLVariantRefExpr)result.getItems().get(1).getTarget(); - Assert.assertTrue(!resultExpr.isHasSessionBefore()); - Assert.assertTrue(resultExpr2.isHasSessionBefore()); + Assert.assertTrue(!resultExpr.isSession()); + Assert.assertTrue(resultExpr2.isSession()); } @@ -124,9 +124,9 @@ public class MysqlCreateTableTest { SQLVariantRefExpr resultExpr = (SQLVariantRefExpr)result.getItems().get(0).getTarget(); SQLVariantRefExpr resultExpr2 = (SQLVariantRefExpr)result.getItems().get(1).getTarget(); SQLVariantRefExpr resultExpr3 = (SQLVariantRefExpr)result.getItems().get(2).getTarget(); - Assert.assertTrue(!resultExpr.isHasSessionBefore()); - Assert.assertTrue(resultExpr2.isHasSessionBefore()); - Assert.assertTrue(resultExpr3.isHasSessionBefore()); + Assert.assertTrue(!resultExpr.isSession()); + Assert.assertTrue(resultExpr2.isSession()); + Assert.assertTrue(resultExpr3.isSession()); } @@ -143,11 +143,11 @@ public class MysqlCreateTableTest { SQLVariantRefExpr resultExpr3 = (SQLVariantRefExpr)result.getItems().get(2).getTarget(); SQLVariantRefExpr resultExpr4 = (SQLVariantRefExpr)result.getItems().get(3).getTarget(); SQLVariantRefExpr resultExpr5 = (SQLVariantRefExpr)result.getItems().get(4).getTarget(); - Assert.assertTrue(!resultExpr.isHasSessionBefore()); - Assert.assertTrue(resultExpr2.isHasSessionBefore()); - Assert.assertTrue(resultExpr3.isHasSessionBefore()); - Assert.assertTrue(!resultExpr4.isHasSessionBefore()); - Assert.assertTrue(resultExpr5.isHasSessionBefore()); + Assert.assertTrue(!resultExpr.isSession()); + Assert.assertTrue(resultExpr2.isSession()); + Assert.assertTrue(resultExpr3.isSession()); + Assert.assertTrue(!resultExpr4.isSession()); + Assert.assertTrue(resultExpr5.isSession()); } }