Exemple #1
0
 protected SqlSelectBuilderBase Values(IEnumerable <Operand> sqlColumns)
 {
     foreach (var operand in sqlColumns ?? throw new ArgumentException(nameof(sqlColumns)))
     {
         Value(operand);
     }
     CurrentPosition = SqlSelectPosition.Select;
     return(this);
 }
Exemple #2
0
 protected SqlSelectBuilderBase From(params SqlTable[] sqlTables)
 {
     FromTablesBlock.AddRange(sqlTables.Select(sqlTable => new TableEntity(sqlTable)));
     foreach (var sqlTable in sqlTables)
     {
         Tables.Add(sqlTable);
     }
     CurrentPosition = SqlSelectPosition.From;
     return(this);
 }
Exemple #3
0
 protected SqlSelectBuilderBase Join(JoinType joinType, SqlTable sqlTable, Operator on = null)
 {
     if (on == null)
     {
         on = AutoJoin(sqlTable);
     }
     Tables.Add(sqlTable);
     JoinsBlock.Add(new JoinBlock(joinType, sqlTable, on));
     CurrentPosition = SqlSelectPosition.Join;
     return(this);
 }
Exemple #4
0
 protected SqlSelectBuilderBase(SqlSelectBuilderBase copyFrom)
 {
     CustomSqlBlocks   = copyFrom.CustomSqlBlocks;
     FromTablesBlock   = copyFrom.FromTablesBlock;
     JoinsBlock        = copyFrom.JoinsBlock;
     OrdersBlock       = copyFrom.OrdersBlock;
     SelectValuesBlock = copyFrom.SelectValuesBlock;
     WhereBlock        = copyFrom.WhereBlock;
     CurrentPosition   = copyFrom.CurrentPosition;
     Tables            = copyFrom.Tables;
     FirstSqlColumns   = copyFrom.FirstSqlColumns;
 }
Exemple #5
0
        protected SqlSelectBuilderBase Values(IEnumerable <SqlColumn> sqlColumns)
        {
            var columns = sqlColumns as SqlColumn[] ?? sqlColumns.ToArray();

            SelectValuesBlock.AddRange(columns?.Select(m => new SelectColumnBlock(m)) ??
                                       throw new ArgumentException(nameof(sqlColumns)));
            var firstColumn = columns.FirstOrDefault();

            if (firstColumn != null)
            {
                FirstSqlColumns.Add(firstColumn);
            }
            CurrentPosition = SqlSelectPosition.Select;
            return(this);
        }
Exemple #6
0
 protected SqlSelectBuilderBase Value(Operand operand)
 {
     SelectValuesBlock.Add(new SelectColumnBlock(operand ?? throw new ArgumentException(nameof(operand))));
     CurrentPosition = SqlSelectPosition.Select;
     return(this);
 }
Exemple #7
0
 protected SqlSelectBuilderBase Offset(Operand offset)
 {
     OffsetBlock     = new OffsetBlock(offset);
     CurrentPosition = SqlSelectPosition.Offset;
     return(this);
 }
Exemple #8
0
 protected SqlSelectBuilderBase LimitBy(Operand limitBy)
 {
     LimitBlock      = new LimitBlock(limitBy);
     CurrentPosition = SqlSelectPosition.Limit;
     return(this);
 }
Exemple #9
0
 protected SqlSelectBuilderBase OrderBy(IEnumerable <OrderBlock> orderBy)
 {
     OrdersBlock.AddRange(orderBy);
     CurrentPosition = SqlSelectPosition.Order;
     return(this);
 }
Exemple #10
0
 protected SqlSelectBuilderBase OrderBy(SqlColumn sqlColumn, OrderDirection direction)
 {
     OrdersBlock.Add(new OrderBlock(sqlColumn, direction));
     CurrentPosition = SqlSelectPosition.Order;
     return(this);
 }
Exemple #11
0
 protected SqlSelectBuilderBase Order(OrderMap orderMap)
 {
     OrdersBlock.AddRange(orderMap);
     CurrentPosition = SqlSelectPosition.Order;
     return(this);
 }
Exemple #12
0
 protected SqlSelectBuilderBase Where(params Operator[] operators)
 {
     WhereBlock.AddRange(operators);
     CurrentPosition = SqlSelectPosition.Where;
     return(this);
 }
Exemple #13
0
 protected SqlSelectBuilderBase Star()
 {
     SelectValuesBlock.Add(new SelectStarBlock());
     CurrentPosition = SqlSelectPosition.Select;
     return(this);
 }