public override IASTNode VisitJoinedTable(SqlServerCommandParser.JoinedTableContext context)
        {
            JoinedTableSegment result      = new JoinedTableSegment();
            TableFactorSegment tableFactor = (TableFactorSegment)Visit(context.tableFactor());

            result.SetTableFactor(tableFactor);
            if (null != context.joinSpecification())
            {
                result.SetJoinSpecification((JoinSpecificationSegment)Visit(context.joinSpecification()));
            }
            return(result);
        }
        public override IASTNode VisitTableReference(SqlServerCommandParser.TableReferenceContext context)
        {
            TableReferenceSegment result = new TableReferenceSegment();

            if (null != context.tableFactor())
            {
                TableFactorSegment tableFactor = (TableFactorSegment)Visit(context.tableFactor());
                result.SetTableFactor(tableFactor);
            }
            if (!context.joinedTable().IsEmpty())
            {
                foreach (var joinedTableContext in context.joinedTable())
                {
                    JoinedTableSegment joinedTableSegment = (JoinedTableSegment)Visit(joinedTableContext);
                    result.JoinedTables.Add(joinedTableSegment);
                }
            }
            return(result);
        }
예제 #3
0
        public override IASTNode VisitTableReference(MySqlCommandParser.TableReferenceContext ctx)
        {
            TableReferenceSegment result = new TableReferenceSegment();

            if (null != ctx.tableFactor())
            {
                TableFactorSegment tableFactor = (TableFactorSegment)Visit(ctx.tableFactor());
                result.SetTableFactor(tableFactor);
            }
            if (!ctx.joinedTable().IsEmpty())
            {
                foreach (MySqlCommandParser.JoinedTableContext each in ctx.joinedTable())
                {
                    JoinedTableSegment joinedTableSegment = (JoinedTableSegment)Visit(each);
                    result.JoinedTables.Add(joinedTableSegment);
                }
            }
            return(result);
        }