private string GetWhereMergeOperatorString(WhereMergeOperatorEnum _operator) { switch (_operator) { case WhereMergeOperatorEnum.And: return(" AND "); case WhereMergeOperatorEnum.Or: return(" OR "); default: return(" AND "); } }
public abstract void AddWhereParameterIN(String _columnName, String _tableName, Array _values, WhereMergeOperatorEnum _whereMergeOperator, Boolean NotIn);
public abstract void AddWhereParameter(String _columnName, String _tableName, Object _value, PropertyCompareOperatorEnum _propertyCompare, WhereMergeOperatorEnum _whereMergeOperator);
public override void AddWhereParameterIN(String _columnName, String _tableName, Array _values, WhereMergeOperatorEnum _whereMergeOperator, Boolean _notIn) { if (_sb_where.Length == 0) { _sb_where.Append(" WHERE "); } else { _sb_where.Append(GetWhereMergeOperatorString(_whereMergeOperator)); } this._sb_where.Append(_where_addParenthesisStart + "[" + _tableName + "].[" + _columnName + "]" + (_notIn ? " NOT" : "").ToString() + " IN ("); String _sep = ""; foreach (var i in _values) { this._command.Parameters.AddWithValue(_sql_paramPrefix + _sql_paramIndex.ToString(), i); _sb_where.Append(_sep + _sql_paramPrefix + _sql_paramIndex.ToString()); this._sql_paramIndex += 1; _sep = ", "; } _sb_where.Append(")"); this._where_addParenthesisStart = String.Empty; }
public override void AddWhereParameter(String _columnName, String _tableName, Object _value, PropertyCompareOperatorEnum _propertyCompare, WhereMergeOperatorEnum _whereMergeOperator) { if (_sb_where.Length == 0) { _sb_where.Append(" WHERE "); } else { _sb_where.Append(GetWhereMergeOperatorString(_whereMergeOperator)); } if (_value != null) { if (_propertyCompare == PropertyCompareOperatorEnum.Like) { if (_value is string) { string a = (string)(_value); a = a + "%"; _value = a; } } this._command.Parameters.AddWithValue(_sql_paramPrefix + _sql_paramIndex.ToString(), _value); this._sb_where.Append(_where_addParenthesisStart + "[" + _tableName + "].[" + _columnName + "]" + GetCompareOperator(_propertyCompare, _value) + _sql_paramPrefix + _sql_paramIndex.ToString()); this._sql_paramIndex += 1; } else { if (_propertyCompare == PropertyCompareOperatorEnum.IsEqual) { this._sb_where.Append(GetWhereMergeOperatorString(_whereMergeOperator) + _where_addParenthesisStart + "[" + _tableName + "].[" + _columnName + "] IS NULL"); } if (_propertyCompare == PropertyCompareOperatorEnum.IsNotEqual) { this._sb_where.Append(GetWhereMergeOperatorString(_whereMergeOperator) + _where_addParenthesisStart + "[" + _tableName + "].[" + _columnName + "] IS NOT NULL"); } } this._where_addParenthesisStart = String.Empty; }
public void AddWhere(Column column, object value, PropertyCompareOperatorEnum compare, WhereMergeOperatorEnum merge) { Provider.AddWhereParameter(column.DbName, column.DbTable.GetTableNameShortcut(), value, compare, merge); }