rename 'MySqlReplicateStatement to MySqlReplaceStatement'

This commit is contained in:
wenshao
2012-07-26 15:29:38 +08:00
parent 165149bf56
commit 440029671c
7 changed files with 28 additions and 17 deletions
@@ -24,7 +24,7 @@ import com.alibaba.druid.sql.ast.expr.SQLQueryExpr;
import com.alibaba.druid.sql.ast.statement.SQLInsertStatement.ValuesClause;
import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor;
public class MySqlReplicateStatement extends MySqlStatementImpl {
public class MySqlReplaceStatement extends MySqlStatementImpl {
private static final long serialVersionUID = 1L;
@@ -68,7 +68,7 @@ import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlLockTableStatement
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlLockTableStatement.LockType;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPrepareStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRenameTableStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplicateStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplaceStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlResetStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRollbackStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlSelectQueryBlock.Limit;
@@ -482,7 +482,7 @@ public class MySqlStatementParser extends SQLStatementParser {
}
if (identifierEquals("REPLACE")) {
MySqlReplicateStatement stmt = parseReplicate();
MySqlReplaceStatement stmt = parseReplicate();
statementList.add(stmt);
return true;
}
@@ -1436,8 +1436,8 @@ public class MySqlStatementParser extends SQLStatementParser {
return stmt;
}
public MySqlReplicateStatement parseReplicate() throws ParserException {
MySqlReplicateStatement stmt = new MySqlReplicateStatement();
public MySqlReplaceStatement parseReplicate() throws ParserException {
MySqlReplaceStatement stmt = new MySqlReplaceStatement();
acceptIdentifier("REPLACE");
@@ -56,7 +56,7 @@ import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlLockTableStatement
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPartitionByKey;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPrepareStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRenameTableStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplicateStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplaceStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlResetStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRollbackStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlSelectGroupBy;
@@ -176,9 +176,9 @@ public interface MySqlASTVisitor extends SQLASTVisitor {
boolean visit(MySqlLoadXmlStatement x);
void endVisit(MySqlReplicateStatement x);
void endVisit(MySqlReplaceStatement x);
boolean visit(MySqlReplicateStatement x);
boolean visit(MySqlReplaceStatement x);
void endVisit(MySqlSelectGroupBy x);
@@ -42,7 +42,7 @@ import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlLockTableStatement
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPartitionByKey;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPrepareStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRenameTableStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplicateStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplaceStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlResetStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRollbackStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlSelectGroupBy;
@@ -266,12 +266,12 @@ public class MySqlASTVisitorAdapter extends SQLASTVisitorAdapter implements
}
@Override
public void endVisit(MySqlReplicateStatement x) {
public void endVisit(MySqlReplaceStatement x) {
}
@Override
public boolean visit(MySqlReplicateStatement x) {
public boolean visit(MySqlReplaceStatement x) {
return true;
}
@@ -74,7 +74,7 @@ import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlLockTableStatement
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPartitionByKey;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPrepareStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRenameTableStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplicateStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplaceStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlResetStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRollbackStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlSQLColumnDefinition;
@@ -900,12 +900,12 @@ public class MySqlOutputVisitor extends SQLASTOutputVisitor implements MySqlASTV
}
@Override
public void endVisit(MySqlReplicateStatement x) {
public void endVisit(MySqlReplaceStatement x) {
}
@Override
public boolean visit(MySqlReplicateStatement x) {
public boolean visit(MySqlReplaceStatement x) {
print("REPLACE ");
if (x.isLowPriority()) {
@@ -53,7 +53,7 @@ import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlLockTableStatement
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPartitionByKey;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlPrepareStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRenameTableStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplicateStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlReplaceStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlResetStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlRollbackStatement;
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlSelectGroupBy;
@@ -339,12 +339,12 @@ public class MySqlSchemaStatVisitor extends SchemaStatVisitor implements MySqlAS
}
@Override
public void endVisit(MySqlReplicateStatement x) {
public void endVisit(MySqlReplaceStatement x) {
}
@Override
public boolean visit(MySqlReplicateStatement x) {
public boolean visit(MySqlReplaceStatement x) {
return true;
}
@@ -49,6 +49,17 @@ public class REPLACE_Syntax_Test extends TestCase {
Assert.assertEquals("REPLACE DELAYED INTO `online_users` (`session_id`, `user_id`, `page`, `lastview`)\nVALUES ('3580cc4e61117c0785372c426eddd11c', 'XXX', '/', NOW());",
text);
}
public void test_2() throws Exception {
String sql = " replace into t(col1,col2)values(?,?)";
SQLStatementParser parser = new MySqlStatementParser(sql);
List<SQLStatement> stmtList = parser.parseStatementList();
String text = output(stmtList);
Assert.assertEquals("REPLACE INTO t (col1, col2)\nVALUES (?, ?);", text);
}
private String output(List<SQLStatement> stmtList) {
StringBuilder out = new StringBuilder();