Esempio n. 1
0
 public SQLParserClause(SQLParserClauseType t)
 {
     Type = t;
 }
Esempio n. 2
0
        public void PushClause(object arg)
        {
            SQLParserClauseType clauseType = SQLParserClauseType.OTHER;

            if (arg != null)
            {
                clauseType = (SQLParserClauseType)arg;
            }

            if (clauseType == SQLParserClauseType.PARENTHESES)
            {
                if (parenthesesLevel == 0)
                {
                    parenthesesClause = "";
                }
                parenthesesLevel++;
            }
            if (clauseType == SQLParserClauseType.EXPRESSION)
            {
                if (expressionLevel == 0)
                {
                    expClause = "";
                }
                expressionLevel++;
            }
            if (clauseType == SQLParserClauseType.COUNT)
            {
                tempLevel++;
            }
            if (clauseStack.Count <= 3)
            {
                switch (clauseType)
                {
                case SQLParserClauseType.SELECT:
                    tempClause = "select";
                    break;

                case SQLParserClauseType.FROM:
                    tempClause = "";
                    break;
                }
            }
            if (clauseStack.Count <= 7)
            {
                switch (clauseType)
                {
                case SQLParserClauseType.WHERE:
                    tempClause = "";
                    break;

                case SQLParserClauseType.GROUPBYLIST:
                    groupByListLevel++;
                    tempClause = "";
                    break;

                case SQLParserClauseType.HAVING:
                    tempClause = "";
                    break;

                case SQLParserClauseType.ORDERBYLIST:
                    orderByListLevel++;
                    tempClause = "";
                    break;
                }
            }

            SQLParserClause clause = new SQLParserClause(clauseType);

            clauseStack.Push(clause);
        }