Exemplo n.º 1
0
        public override IASTNode VisitColumnNames(SqlServerCommandParser.ColumnNamesContext context)
        {
            CollectionValue <ColumnSegment> result = new CollectionValue <ColumnSegment>();

            foreach (var columnName in context.columnNameWithSort())
            {
                result.GetValue().Add((ColumnSegment)Visit(columnName));
            }

            return(result);
        }
        public override IASTNode VisitInsertValuesClause(SqlServerCommandParser.InsertValuesClauseContext context)
        {
            InsertCommand result = new InsertCommand();

            if (null != context.columnNames())
            {
                SqlServerCommandParser.ColumnNamesContext columnNames    = context.columnNames();
                CollectionValue <ColumnSegment>           columnSegments = (CollectionValue <ColumnSegment>)Visit(columnNames);
                result.InsertColumns = new InsertColumnsSegment(columnNames.Start.StartIndex, columnNames.Stop.StopIndex, columnSegments.GetValue());
            }
            else
            {
                result.InsertColumns = new InsertColumnsSegment(context.Start.StartIndex - 1, context.Stop.StopIndex - 1, new List <ColumnSegment>());
            }
            result.Values.AddAll(CreateInsertValuesSegments(context.assignmentValues()));
            return(result);
        }