/// <summary> /// 更新数据 /// </summary> /// <param name="updateSql"></param> /// <param name="parameters"></param> /// <param name="tran"></param> /// <param name="commandTimeout"></param> /// <returns>返回更新的行数</returns> public int Update(string updateSql, DynamicParameters parameters = null, IDbTransaction tran = null, int?commandTimeout = null) { // 获取数据库连接 IDbConnection connection = tran != null ? tran.Connection : GetConnection(); // 打开数据库连接 ConnectionOpen(connection, tran); int result = 0; try { // 执行更新命令 object result1 = connection.ExecuteScalar(updateSql, parameters, tran, commandTimeout); } catch (Exception ex) { throw new NpgOperationException(ex, $"sql命令更新数据异常 \r\nsql:{connection} \r\n更新参数:{parameters.ToJson()}"); } // 关闭数据库连接 ConnectionClose(connection, tran); return(result); }
/// <summary> /// 更新数据 /// </summary> /// <param name="obj"></param> /// <param name="tran"></param> /// <param name="commandTimeout"></param> public void Update(T obj, IDbTransaction tran = null, int?commandTimeout = null) { // 获取数据库连接 IDbConnection connection = tran != null ? tran.Connection : GetConnection(); DynamicParameters param = new DynamicParameters(); foreach (var p in PropertyList) { param.Add($"{p.Name}", p.GetValue(obj)); } // 打开数据库连接 ConnectionOpen(connection, tran); try { // 执行更新命令 connection.ExecuteScalar <IdType>(DefaultUpdateSQL, param, tran, commandTimeout); } catch (Exception ex) { throw new NpgOperationException(ex, $"Update数据异常 \r\nsql:{DefaultUpdateSQL} \r\n更新对象:{param.ToJson()}"); } // 关闭数据库连接 ConnectionClose(connection, tran); }