示例#1
0
 public SqlSelectNode Update(string modifier, SqlTopLimitNode top, SqlListNode <ISqlNode> columns,
                             ISqlNode from, ISqlNode where, SqlOrderByNode orderBy,
                             ISqlNode groupBy, ISqlNode having, ISqlNode offset, ISqlNode fetch)
 {
     if (modifier == Modifier && top == TopLimitClause && columns == Columns && from == FromClause &&
         where == WhereClause && orderBy == OrderByClause && groupBy == GroupByClause && having == HavingClause &&
         fetch == FetchClause && offset == OffsetClause)
     {
         return(this);
     }
     return(new SqlSelectNode
     {
         Location = Location,
         Columns = columns,
         FromClause = from,
         GroupByClause = groupBy,
         HavingClause = having,
         Modifier = modifier,
         OrderByClause = orderBy,
         TopLimitClause = top,
         WhereClause = where,
         FetchClause = fetch,
         OffsetClause = offset
     });
 }
示例#2
0
 public SqlExecuteNode Update(ISqlNode name, SqlListNode <SqlExecuteArgumentNode> args)
 {
     if (name == Name && args == Arguments)
     {
         return(this);
     }
     return(new SqlExecuteNode
     {
         Name = name,
         Arguments = args
     });
 }
示例#3
0
 public SqlValuesNode Update(SqlListNode <SqlListNode <ISqlNode> > values)
 {
     if (values == Values)
     {
         return(this);
     }
     return(new SqlValuesNode
     {
         Location = Location,
         Values = values
     });
 }
示例#4
0
 public SqlOrderByNode Update(SqlListNode <SqlOrderByEntryNode> entries)
 {
     if (entries == Entries)
     {
         return(this);
     }
     return(new SqlOrderByNode
     {
         Location = Location,
         Entries = entries
     });
 }
示例#5
0
 public SqlWithNode Update(SqlListNode <SqlWithCteNode> ctes, ISqlNode stmt)
 {
     if (ctes == Ctes && Statement == stmt)
     {
         return(this);
     }
     return(new SqlWithNode
     {
         Location = Location,
         Ctes = ctes,
         Statement = stmt
     });
 }
 public SqlFunctionCallNode Update(ISqlNode name, SqlListNode <ISqlNode> args)
 {
     if (name == Name && args == Arguments)
     {
         return(this);
     }
     return(new SqlFunctionCallNode
     {
         Location = Location,
         Name = name,
         Arguments = args
     });
 }
示例#7
0
 public SqlInNode Update(bool not, ISqlNode search, SqlListNode <ISqlNode> items)
 {
     if (not == Not && search == Search && items == Items)
     {
         return(this);
     }
     return(new SqlInNode
     {
         Location = Location,
         Not = not,
         Items = items,
         Search = search
     });
 }
示例#8
0
 public SqlAliasNode Update(ISqlNode source, SqlIdentifierNode alias, SqlListNode <SqlIdentifierNode> columns)
 {
     if (source == Source && alias == Alias && columns == ColumnNames)
     {
         return(this);
     }
     return(new SqlAliasNode
     {
         Location = Location,
         Source = source,
         Alias = alias,
         ColumnNames = columns
     });
 }
示例#9
0
 public SqlUpdateNode Update(ISqlNode source, SqlListNode <SqlInfixOperationNode> set, ISqlNode where)
 {
     if (source == Source && set == SetClause && where == WhereClause)
     {
         return(this);
     }
     return(new SqlUpdateNode
     {
         Location = Location,
         Source = source,
         SetClause = set,
         WhereClause = where
     });
 }
示例#10
0
 public SqlInsertNode Update(ISqlNode table, SqlListNode <SqlIdentifierNode> columns, ISqlNode source, ISqlNode onConflict)
 {
     if (table == Table && columns == Columns && source == Source && onConflict == OnConflict)
     {
         return(this);
     }
     return(new SqlInsertNode
     {
         Location = Location,
         Table = table,
         Columns = columns,
         Source = source,
         OnConflict = onConflict
     });
 }
示例#11
0
 public SqlWithCteNode Update(SqlIdentifierNode name, SqlListNode <SqlIdentifierNode> columns, ISqlNode select, bool recursive)
 {
     if (name == Name && columns == ColumnNames && select == Select && recursive == Recursive)
     {
         return(this);
     }
     return(new SqlWithCteNode
     {
         Location = Location,
         Name = name,
         ColumnNames = columns,
         Select = select,
         Recursive = recursive
     });
 }