public void ValidateQuery(String query) { ANTLRStringStream string_stream = new ANTLRStringStream(query); QueryLexer lexer = new QueryLexer(string_stream); CommonTokenStream tokens = new CommonTokenStream(lexer); QueryParser parser = new QueryParser(tokens); QueryParser.statement_return obj = parser.statement(); Statement StatementObject = obj.ret; if (StatementObject is CreateTable) { CreateTable mod = (CreateTable)StatementObject; } }
public Statement ValidateQuery(string query) { Statement ret = null; try { ANTLRStringStream string_stream = new ANTLRStringStream(query); QueryLexer lexer = new QueryLexer(string_stream); CommonTokenStream tokens = new CommonTokenStream(lexer); QueryParser parser = new QueryParser(tokens); QueryParser.statement_return obj = parser.statement(); ret = obj.ret; } catch (Antlr.Runtime.MismatchedTokenException ex) { string token = m_TokenProcessor.GetTokenName(ex.Expecting); if (token == null) token = "."; else token = token + "."; string msg = "Error in processing query. Missing or invalid statement. Expecting: " + token; QueryParserException exception = new QueryParserException(msg); throw exception; } catch (Antlr.Runtime.MismatchedTreeNodeException ex) { QueryParserException exception = new QueryParserException(ex.Message); throw exception; } catch (Antlr.Runtime.NoViableAltException ex) { QueryParserException exception = new QueryParserException(ex.Message); throw exception; } catch (Antlr.Runtime.EarlyExitException ex) { QueryParserException exception = new QueryParserException(ex.Message); throw exception; } catch (Antlr.Runtime.FailedPredicateException ex) { QueryParserException exception = new QueryParserException(ex.Message); throw exception; } catch (Antlr.Runtime.MismatchedRangeException ex) { QueryParserException exception = new QueryParserException(ex.Message); throw exception; } catch (Antlr.Runtime.MismatchedSetException ex) { QueryParserException exception = new QueryParserException(ex.Message); throw exception; } catch (Antlr.Runtime.RecognitionException ex) { QueryParserException exception = new QueryParserException(ex.Message); throw exception; } catch (QueryParserException ex) { throw ex; } return ret; }