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); }