/// <summary> /// 根据已修改的实体属性,生成UPDATE操作语句(WHERE条件由主键生成[DbColumn(PrimaryKey=true)]),并执行数据库插入操作, /// 注意:此方法只能在实体的代理对象上调用。 /// </summary> /// <returns>数据库操作过程中影响的行数</returns> public int Update() { IEntityProxy proxy = this as IEntityProxy; if (proxy == null) { throw new InvalidOperationException("请在调用BeginEdit()的返回值对象上调用Update方法。"); } // 获取数据实体对象的主键值,如果数据实体没有指定主键,将会抛出一个异常 Tuple <string, object> rowKey = proxy.GetRowKey(); CPQuery update = GetUpdateQuery(rowKey); if (update == null) { return(-1); } CPQuery query = update + " WHERE " + rowKey.Item1 + " = " + new QueryParameter(rowKey.Item2); proxy.ClearChangeFlags(); // 清除修改标记,防止多次调用 return(query.ExecuteNonQuery()); }
/// <summary> /// 根据已修改的实体属性,生成UPDATE操作语句(WHERE条件由主键生成[DbColumn(PrimaryKey=true)]),并执行数据库插入操作, /// 注意:此方法只能在实体的代理对象上调用。 /// </summary> /// <returns>数据库操作过程中影响的行数</returns> public int Update() { CPQuery query = GetUpdateQueryCommand(); if (query == null) { return(-1); } return(query.ExecuteNonQuery()); }
/// <summary> /// 根据已修改的实体属性,生成INSERT语句,并执行数据库插入操作, /// 注意:此方法只能在实体的代理对象上调用。 /// </summary> /// <returns>数据库操作过程中影响的行数</returns> public int Insert() { CPQuery query = GetInsertQueryCommand(); if (query == null) { return(-1); } return(query.ExecuteNonQuery()); }
/// <summary> /// 根据指定的实体属性,生成INSERT语句,并执行数据库插入操作 /// </summary> /// <returns></returns> public int Insert() { if (_setProxy == null) { throw new InvalidOperationException("请先调用Set方法。"); } CPQuery query = _setProxy.GetInsertQuery(); return(query.ExecuteNonQuery()); }
/// <summary> /// 根据指定的实体属性,生成DELETE查询条件,并执行数据库插入操作 /// </summary> /// <returns></returns> public int Delete() { if (_whereProxy == null) { throw new InvalidOperationException("请先调用Where方法。"); } CPQuery where = _whereProxy.GetWhereQuery(); CPQuery delete = this.Context.CreateCPQuery() + "DELETE FROM " + _whereProxy.GetTableName() + where; return(delete.ExecuteNonQuery()); }
/// <summary> /// 根据指定的实体属性,生成UPDATE的语句,并执行数据库插入操作 /// </summary> /// <returns></returns> public int Update() { if (_setProxy == null) { throw new InvalidOperationException("请先调用Set方法。"); } if (_whereProxy == null) { throw new InvalidOperationException("请先调用Where方法。"); } CPQuery update = _setProxy.GetUpdateQuery(null); CPQuery where = _whereProxy.GetWhereQuery(); CPQuery query = update + where; return(query.ExecuteNonQuery()); }
/// <summary> /// 根据已修改的实体属性,生成INSERT语句,并执行数据库插入操作, /// 注意:此方法只能在实体的代理对象上调用。 /// </summary> /// <returns>数据库操作过程中影响的行数</returns> public int Insert() { IEntityProxy proxy = this as IEntityProxy; if (proxy == null) { throw new InvalidOperationException("请在调用BeginEdit()的返回值对象上调用Insert方法。"); } CPQuery insert = GetInsertQuery(); if (insert == null) { return(-1); } proxy.ClearChangeFlags(); // 清除修改标记,防止多次调用 return(insert.ExecuteNonQuery()); }
/// <summary> /// 根据已修改的实体属性,生成DELETE查询条件,并执行数据库插入操作, /// 注意:此方法只能在实体的代理对象上调用。 /// </summary> /// <returns>数据库操作过程中影响的行数</returns> public int Delete() { IEntityProxy proxy = this as IEntityProxy; if (proxy == null) { throw new InvalidOperationException("请在调用BeginEdit()的返回值对象上调用Delete方法。"); } CPQuery where = GetWhereQuery(); if (where == null) { return(-1); // 不允许没有WHERE条件的删除,如果确实需要,请手工写SQL } CPQuery query = this.DbContext.CreateCPQuery() + "DELETE FROM " + GetTableName() + where; proxy.ClearChangeFlags(); // 清除修改标记,防止多次调用 return(query.ExecuteNonQuery()); }
/// <summary> /// 根据指定的实体属性,生成UPDATE的语句,并执行数据库插入操作 /// </summary> /// <returns></returns> public int Update() { CPQuery query = GeUpdateQuery(); return(query.ExecuteNonQuery()); }
/// <summary> /// 根据指定的实体属性,生成DELETE查询条件,并执行数据库插入操作 /// </summary> /// <returns></returns> public int Delete() { CPQuery query = GetDeleteQuery(); return(query.ExecuteNonQuery()); }
/// <summary> /// 根据指定的实体属性,生成INSERT语句,并执行数据库插入操作 /// </summary> /// <returns></returns> public int Insert() { CPQuery query = GetInsertQuery(); return(query.ExecuteNonQuery()); }