private void AppendCompareOperator(Filter filter) { var filterCondition = (FilterCondition) filter; var compareOperator = ChangeCompareOperatorToIsWhenParameterValueIsNull(filterCondition); AddSpace(); _builder.Append(CompareOperatorToSymbol.Get(compareOperator)); AddSpace(); }
private void AddLogicOperator(Filter filter) { AddSpace(); var filterLogic = filter as FilterLogic; _builder.Append(LogicOperatorToSymbol.Get(filterLogic.LogicOperator)); AddSpace(); }
private static Filter CreateFilterLogic(LogicOperator logicOperator, Filter leftFilter, Filter rightFilter) { return new FilterLogic { Left = leftFilter, Right = rightFilter, LogicOperator = logicOperator }; }
private void BuildRecursive(Filter filter) { if (filter is FilterCondition) { AddFilterParameter((FilterCondition)filter); return; } OpenParentesis(); BuildRecursive((Filter)filter.Left); AddLogicOperator(filter); BuildRecursive((Filter)filter.Right); CloseParentesis(); }
private void GetAllValueParametersRecursive(Filter filter, List<object> parameters) { GoToSubNode(filter.Left, parameters); GoToSubNode(filter.Right, parameters); }
public int UpdateSql(string table, string[] columns, object[] values, Filter filter) { return 0; }
public ResultSet SelectSql(string[] tables, string[] columns, Filter filter, OrderBy[] orderBys, int skip, int take) { return new ResultSet(); }
public int DeleteSql(string table, Filter filter) { return 0; }
public int CountSql(string table, Filter filter) { return 0; }
private static Filter GetFilterValor(Filter filter, decimal valor) { var mesmoValor = Filter.Eq("vl_eneat_rec_cp", valor); var valorNull = Filter.Eq("vl_eneat_rec_cp", null); return Filter.And(filter, Filter.Or(mesmoValor, valorNull)); }
public int Where(Filter where) { _update.Filter = where; _update.Execute(); return _update.AfectedRows; }
public int Where(Filter where) { _delete.Filter = where; _delete.Execute(); return _delete.AfectedRows; }
public virtual int UpdateSql(string table, string[] columns, object[] values, Filter filter) { string sql = Dialect.GetUpdateSql(table, columns, values); In[] parameters = Dialect.ConvertToNamedParameters(values); if (filter != null) { string whereSql = Dialect.GetWhereSql(filter, parameters.Count()); object[] pars = filter.GetAllValueParameters(); In[] filterParameters = Dialect.ConvertToNamedParameters(parameters.Count(), pars); filterParameters = filterParameters.Where(x => x.Value != null && x.Value != DBNull.Value).ToArray(); parameters = parameters.Concat(filterParameters).ToArray(); sql = sql + " " + whereSql; } return Database.ExecuteSql(sql, parameters); }
public virtual string Build(Filter filter) { AppendWordWhere(); BuildRecursive(filter); return _builder.ToString(); }
public virtual ResultSet SelectSql(string[] tables, string[] columns, Filter filter, OrderBy[] orderBys, int skip, int take) { var selectBuilder = new SelectBuilder(Dialect, tables, columns); selectBuilder.Filter = filter; selectBuilder.OrderBys = orderBys; selectBuilder.Skip = skip; selectBuilder.Take = take; string sql = selectBuilder.Build(); if (selectBuilder.HasFilter) { return Database.Query(sql, selectBuilder.Parameters); } return Database.Query(sql); }
public virtual int DeleteSql(string table, Filter filter) { string sql = Dialect.GetDeleteSql(table); if (filter != null) { string whereSql = Dialect.GetWhereSql(filter, 0); object[] pars = filter.GetAllValueParameters(); In[] parameters = Dialect.ConvertToNamedParameters(0, pars); return Database.ExecuteSql(sql + " " + whereSql, parameters); } return Database.ExecuteSql(sql); }
public virtual int CountSql(string table, Filter filter) { string sql = Dialect.GetCountSql(table); object obj; if (filter != null) { string whereSql = Dialect.GetWhereSql(filter, 0); object[] pars = filter.GetAllValueParameters(); In[] parameters = Dialect.ConvertToNamedParameters(0, pars); obj = Database.QueryScalar(sql + " " + whereSql, parameters); return Convert.ToInt32(obj); } obj = Database.QueryScalar(sql); return Convert.ToInt32(obj); }
public static Filter Or(Filter leftFilter, Filter rightFilter) { return CreateFilterLogic(LogicOperator.Or, leftFilter, rightFilter); }
public int Where(Filter where) { _count.Filter = where; _count.Execute(); return _count.CountedRows; }
public IFluentSelectOrderBy Where(Filter where) { _select.Filter = where; return this; }
public void Init() { _dialect = new Mock<Dialect>(); _dialect.Setup(p => p.WordWhere).Returns(_wordWhere); _dialect.Setup(p => p.GetParameterName(It.IsAny<int>())) .Returns((int input) => ":par" + input); _dialect.Setup(p => p.WordNull).Returns("null"); _whereBuilder = new WhereBuilder(_dialect.Object, 0); _filter1 = CreateFilter(1); _filter2 = CreateFilter(2); _filter3 = CreateFilter(3); _filter4 = CreateFilter(4); }
public virtual string GetWhereSql(Filter filter, int parameterStartIndex) { var whereBuilder = new WhereBuilder(this, parameterStartIndex); return whereBuilder.Build(filter); }
private void TestFilterCondition(Filter filter, CompareOperator compareOperator) { FilterCondition filterCondition = (FilterCondition) filter; Assert.AreEqual(compareOperator, filterCondition.CompareOperator); CheckFilterParameter(filterCondition.Left, "col1", FilterParameterType.Column); CheckFilterParameter(filterCondition.Right, 1, FilterParameterType.Value); }