public DbCriteria Add(string table, string fieldname, DbFieldEntry fieldvalue, DbExpression.SqlCondition condition, ConcatMode mode) { if (mode == ConcatMode.AND) { And(CreateExpression(table, fieldname, fieldvalue, condition)); } else if (mode == ConcatMode.OR) { Or(CreateExpression(table, fieldname, fieldvalue, condition)); } return(this); }
public DbExpression(DbColumn column, DbFieldEntry fieldvalue, SqlCondition condition) { mColumn = column; mFieldvalue = fieldvalue; mCondition = condition; this[SqlCondition.IsEqual] = "="; this[SqlCondition.IsLessEqual] = "<="; this[SqlCondition.IsGreaterEqual] = ">="; this[SqlCondition.IsLess] = "<"; this[SqlCondition.IsGreater] = ">"; this[SqlCondition.Like] = "LIKE"; }
public override string ToString() { StringBuilder sb = new StringBuilder(); sb.AppendFormat("UPDATE {0} SET", DbMgr.FieldAlias(mTable)); int column_counter = 0; foreach (string columnname in mColumns.Keys) { DbElement fieldvalue = mColumns[columnname]; if (fieldvalue is DbFieldEntry) { DbFieldEntry _fieldvalue = fieldvalue as DbFieldEntry; if (!_fieldvalue.IsValidValue) { continue; } if (_fieldvalue.SkipOnUpdate) { continue; } } if (column_counter == 0) { sb.AppendFormat(" {0} = {1}", DbMgr.FieldAlias(columnname), fieldvalue); } else { sb.AppendFormat(", {0} = {1}", DbMgr.FieldAlias(columnname), fieldvalue); } column_counter++; } string where_text = WhereText; if (where_text != "") { sb.AppendFormat(" WHERE {0}", where_text); } return(sb.ToString()); }
public virtual DbExpression CreateExpression(string table, string fieldname, DbFieldEntry fieldvalue, DbExpression.SqlCondition condition) { return(DbMgr.CreateExpression(DbMgr.CreateColumn(table, fieldname), fieldvalue, condition)); }