mysql sql format support keepComments.

This commit is contained in:
wenshao
2017-05-14 10:14:34 +08:00
parent 2c26d3623f
commit 5706f65fcf
9 changed files with 187 additions and 5 deletions
@@ -242,7 +242,7 @@ public class SQLUtils {
public static String format(String sql, String dbType, List<Object> parameters, FormatOption option) {
try {
SQLStatementParser parser = SQLParserUtils.createSQLStatementParser(sql, dbType);
SQLStatementParser parser = SQLParserUtils.createSQLStatementParser(sql, dbType, true);
parser.setKeepComments(true);
List<SQLStatement> statementList = parser.parseStatementList();
@@ -438,6 +438,15 @@ public class SQLUtils {
return stmtList;
}
public static List<SQLStatement> parseStatements(String sql, String dbType, boolean keepComments) {
SQLStatementParser parser = SQLParserUtils.createSQLStatementParser(sql, dbType, keepComments);
List<SQLStatement> stmtList = parser.parseStatementList();
if (parser.getLexer().token() != Token.EOF) {
throw new DruidRuntimeException("syntax error : " + sql);
}
return stmtList;
}
/**
* @author owenludong.lud
* @param columnName