/// <summary> /// Ejecuta una sql que rellenar un DataReader (sentencia select). /// </summary> /// <param name="SqlQuery">sentencia sql a ejecutar</param> /// <returns>Estatus de transacción y datos obtenidos</returns> public static ManejoSql_My EjecutaSQL(string SqlQuery, MySqlCommand cmd) { ManejoSql_My result = new ManejoSql_My(); try { // Se define el tipo de comando cmd.CommandType = CommandType.Text; // Se define la instruccion Transact-SQL cmd.CommandText = SqlQuery; // Ejecutamos sql. result.reader = cmd.ExecuteReader(); // Se define si la respuesta no generó ningun error result.ok = true; } catch (MySqlException sqlex) { // se define el numero de error segun SqlServer result.numErr = sqlex.Number; // Se define el mensaje de error result.descErr = sqlex.Message; // Se define estatus de transaccion result.ok = false; } catch (Exception ex) { // se define el numero de error segun SqlServer result.numErr = 0; // Se define el mensaje de error result.descErr = ex.Message; // Se define estatus de transaccion result.ok = false; } return(result); }
/// <summary> /// Ejecuta una sql que no devuelve datos (update, delete, insert). /// </summary> /// <param name="SqlQuery">sentencia sql a ejecutar</param> /// <param name="FilasAfectadas">Fila afectadas por la sentencia SQL</param> /// <returns></returns> public static ManejoSql_My EjecutaSQL(string SqlQuery, ref int FilasAfectadas, MySqlCommand cmd) { ManejoSql_My result = new ManejoSql_My(); try { cmd.CommandType = CommandType.Text; cmd.CommandText = SqlQuery; // regresa las filas afectadas FilasAfectadas = cmd.ExecuteNonQuery(); result.ok = true; } catch (MySqlException sqlex) { // se define el numero de error segun SqlServer result.numErr = sqlex.Number; // Se define el mensaje de error result.descErr = sqlex.Message; // Se define estatus de transaccion result.ok = false; } catch (Exception ex) { // se define el numero de error segun SqlServer result.numErr = 0; // Se define el mensaje de error result.descErr = ex.Message; // Se define estatus de transaccion result.ok = false; } return(result); }