protected virtual Expression VisitInsert(DbInsertExpression insert) { DbTableExpression table = (DbTableExpression)Visit(insert.Table); ReadOnlyCollection <DbColumnAssignment> assignments = VisitColumnAssignments(insert.Assignments); return(UpdateInsert(insert, table, assignments)); }
protected DbInsertExpression UpdateInsert(DbInsertExpression insert, DbTableExpression table, IEnumerable <DbColumnAssignment> assignments) { if (table != insert.Table || assignments != insert.Assignments) { return(new DbInsertExpression(table, assignments)); } return(insert); }
protected DbInsertExpression UpdateInsert(DbInsertExpression insert, DbTableExpression table, IEnumerable<DbColumnAssignment> assignments) { if (table != insert.Table || assignments != insert.Assignments) return new DbInsertExpression(table, assignments); return insert; }
protected virtual Expression VisitInsert(DbInsertExpression insert) { DbTableExpression table = (DbTableExpression)Visit(insert.Table); ReadOnlyCollection<DbColumnAssignment> assignments = VisitColumnAssignments(insert.Assignments); return UpdateInsert(insert, table, assignments); }
protected virtual bool CompareInsert(DbInsertExpression x, DbInsertExpression y) { return(Compare(x.Table, y.Table) && CompareColumnAssignments(x.Assignments, y.Assignments)); }
protected override Expression VisitInsert(DbInsertExpression insert) { return(this.BuildExecuteCommand(insert)); }
protected override Expression VisitInsert(DbInsertExpression insert) { this.Write("INSERT INTO "); this.WriteTableName(insert.Table.Name); this.Write("("); for (int i = 0, n = insert.Assignments.Count; i < n; i++) { DbColumnAssignment ca = insert.Assignments[i]; if (i > 0) this.Write(", "); this.Write(ca.Column.Name); } this.Write(")"); this.WriteLine(Indentation.Same); this.Write("VALUES ("); for (int i = 0, n = insert.Assignments.Count; i < n; i++) { DbColumnAssignment ca = insert.Assignments[i]; if (i > 0) this.Write(", "); this.Visit(ca.Expression); } this.Write(")"); return insert; }
protected virtual bool CompareInsert(DbInsertExpression x, DbInsertExpression y) { return Compare(x.Table, y.Table) && CompareColumnAssignments(x.Assignments, y.Assignments); }