/// <summary> /// Realiza un test de conexión que informa al usuario de manera visual /// si los campos introducidos tienen una conexión válida. /// </summary> /// <returns>True si la conexión es válida.</returns> private bool Test() { conexionActual = ComprobarCampos(); if (conexionActual != null) { // Muestra la conexión actual ActualizarConexionActual(conexionActual); // Obtiene el resultado bool retorno = Operacion.ExecuteTest(conexionActual); if (retorno) { Msj.Info("Conexión correcta."); } else { Msj.Error("Conexión fallida"); } return(retorno); } else { Msj.Aviso("No existe conexión actual guardada correcta."); return(false); } }
private void btn_Click(object sender, RoutedEventArgs e) { // Comprobación WHERE if (!comandoEnviar.CommandText.Contains("WHERE")) { MessageBoxResult opcionElegida = MessageBox.Show("No se han elegido condiciones. \r\n" + "Se realizará un borrado TOTAL de TODAS las filas. ¿Continuar?", "Peligro", MessageBoxButton.YesNo, MessageBoxImage.Stop); if (opcionElegida.Equals(MessageBoxResult.No)) { return; } } int resultado = Operacion.ExecuteNonQuery(conexionActual, comandoEnviar); if (resultado > 0) { Msj.Info( resultado + " filas de la tabla \"" + Comprueba.EliminarResto(cmbTablas.SelectedItem.ToString()) + "\" en base de datos " + "\"" + conexionActual.BaseDatos + "\" eliminadas con éxito."); } else { Msj.Aviso("Ninguna fila afectada."); } }
private void btnEjecutar_Click(object sender, RoutedEventArgs e) { int resultado = Operacion.ExecuteNonQuery(conexionActual, comandoEnviar); if (resultado != Operacion.ERROR) { Msj.Info("Tabla \"" + Comprueba.EliminarResto(txtTabla.Text) + "\" en base de datos " + "\"" + conexionActual.BaseDatos + "\" creada con éxito."); } }
private void btn_Click(object sender, RoutedEventArgs e) { int resultado = Operacion.ExecuteNonQuery(conexionActual, comandoEnviar); if (resultado != Operacion.ERROR) { Msj.Info("Tabla \"" + Comprueba.EliminarResto(cmbTablas.SelectedItem.ToString()) + "\" en base de datos " + "\"" + conexionActual.BaseDatos + "\" modificada con éxito."); // Reestableciendo tipo operación a por defecto cmbTipoOperacion.SelectedIndex = 0; } }
private void btn_Click(object sender, RoutedEventArgs e) { // Crear datos a guardar DatosConsulta datosGuardar = new DatosConsulta( paqueteDatos.Conexion, paqueteDatos.Datos, paqueteDatos.ComandoSQL); if (Serializador.Guardar(datosGuardar)) { Msj.Info("Datos almacenados correctamente."); } else { Msj.Aviso("Error al guardar. Datos no almacenados."); } }
private void btn_Click(object sender, RoutedEventArgs e) { int resultado = Operacion.ExecuteNonQuery(conexionActual, comandoEnviar); if (resultado > 0) { Msj.Info( "Fila en la tabla \"" + Comprueba.EliminarResto(cmbTablas.SelectedItem.ToString()) + "\" en base de datos " + "\"" + conexionActual.BaseDatos + "\" añadida con éxito."); } else { Msj.Error("Ninguna fila afectada."); } }
/// <summary> /// Muestra un mensaje al usuario correspondiente al tipo de resultado /// que se haya producido. /// </summary>/// <summary> /// Muestra un mensaje al usuario correspondiente al tipo de resultado /// que se haya producido. /// </summary> public void MostrarMensaje() { switch (ResultadoActual) { case TipoResultado.ACEPTADO: Msj.Info(RESPUESTA_ACEPTADO); break; case TipoResultado.DENEGADO: Msj.Aviso(RESPUESTA_DENEGADO); break; case TipoResultado.ERROR: Msj.Error(RESPUESTA_ERROR); break; default: break; } }
/// <summary> /// Intenta cargar datos de un fichero de una consulta SELECT previamente creado. /// Si lo consigue, muestra metadatos del archivo por medio de una ventana de información, /// luego muestra los datos del fichero en una ventana Mostrar Datos no modal. /// En caso contrario, muestra un mensaje de aviso al usuario. /// </summary> private void Cargar() { DatosConsulta datosCargados = Serializador.Cargar(); if (datosCargados != null) { var c = datosCargados.Conexion; // Mostrar información del archivo string informacion = "Base de datos \"" + c.BaseDatos + "\" tipo \"" + c.TipoActual + "\"\r\nFecha consulta: " + datosCargados.FechaCreacion; Msj.Info(informacion); VMostrarDatos vmd = new VMostrarDatos(datosCargados); vmd.Show(); } else { Msj.Aviso("No se ha podido cargar el fichero seleccionado"); } }
private void btn_Click(object sender, RoutedEventArgs e) { if (txtbox.Text.Length > 0) { if (Comprueba.ContieneSeparadorSQL(txtbox.Text)) { Msj.Aviso("Detectado separador SQL. Sólo se ejecutará: " + comandoEnviar.CommandText); } comandoEnviar.CommandText = textoComandoOriginal + Comprueba.EliminarResto(txtbox.Text); int resultado = Operacion.ExecuteNonQuery(conexionActual, comandoEnviar); if (resultado != Operacion.ERROR) { Msj.Info("Base de datos \"" + Comprueba.EliminarResto(txtbox.Text) + "\" creada con éxito."); } } else { Msj.Aviso("Debes introducir un nombre"); } }
private void btn_Click(object sender, RoutedEventArgs e) { if (!Comun.ElegidaTablaDefecto(cmbDatos) && !Comun.ElegidaBaseDatosDefecto(cmbDatos)) { comandoEnviar.CommandText = GenerarComandoEnvio(false); int resultado = Operacion.ExecuteNonQuery(conexionActual, comandoEnviar); // Bien if (resultado != Operacion.ERROR) { Msj.Info(CLICK_OK + "\"" + cmbDatos.SelectedItem + "\"" + " eliminada con con éxito."); } // Si la base de datos no se ha podido borrar por conexión abierta, preguntar forzado if (modoActual.Equals(Modo.DATABASE) && resultado == Operacion.ERROR) { MessageBoxResult opcionElegir = MessageBox.Show("Error al eliminar la base de datos.\r\n" + "¿Desea forzar el borrado?", "Alerta", MessageBoxButton.YesNo, MessageBoxImage.Warning); if (opcionElegir.Equals(MessageBoxResult.Yes)) { comandoEnviar.CommandText = GenerarComandoEnvio(true); resultado = Operacion.ExecuteNonQuery(conexionActual, comandoEnviar); // Bien if (resultado == -1) { Msj.Info(CLICK_OK + "\"" + cmbDatos.SelectedItem + "\"" + " eliminada con con éxito."); } } } } else { Msj.Error(CLICK_ERROR); } }
/// <summary> /// Se comprueban todos los inputs de la ventana y que estos tengan datos correctos. /// </summary> /// <returns>Devuelve una Conexion si los campos obligatorios tienen valores correctos y los demás /// estén vacíos o con valores correctos.</returns> private Conexion ComprobarCampos() { // Campos obligatorios: nombre conexión, dirección, usuario, tipo conexión. // El operador ?? operador devuelve el operando izquierdo si no es NULL; // de lo contrario, devuelve el operando derecho. // Comprueba si el nombre tiene datos correctos o está deshabilitado (modoInvitado) if (((Comprueba.Nombre(txtBoxNombre.Text)) || !txtBoxNombre.IsEnabled) && (Comprueba.Direccion(txtBoxDireccion.Text)) && (Comprueba.UsuarioConexion(txtBoxUsuario.Text)) && (Comprueba.Puerto(txtBoxPuerto.Text) ?? true)) { string nombre = txtBoxNombre.Text; string direccion = txtBoxDireccion.Text; string usuario = txtBoxUsuario.Text; Conexion.TipoConexion tipo; bool ssl = false; // Comprobando si el tipo de conexión está marcado if (rbtnMicrosoftSQL.IsChecked.Value) { tipo = Conexion.TipoConexion.MicrosoftSQL; if (chkIntegratedSecurity.IsChecked.Value) { usuario = Usuario.NombreIntegratedSecurity; } } else if (rbtnMySQL.IsChecked.Value) { tipo = Conexion.TipoConexion.MySQL; if (chkUsarSSL.IsChecked.Value) { ssl = true; } } else { Msj.Error("No se ha marcado el tipo de conexión."); return(null); } int puerto = 0; if (!String.IsNullOrWhiteSpace(txtBoxPuerto.Text)) { puerto = Int32.Parse(txtBoxPuerto.Text); } if (puerto == 0) { Msj.Info("Puerto no introducido. " + "\r\nObteniendo puerto por defecto para bases de datos " + tipo); puerto = BBDDPrograma.ObtenerPuertoDefecto(tipo); } string contrasenia = pwdBoxContrasenia.Password; Conexion guardar = new Conexion(nombre, direccion, puerto, usuario, contrasenia, tipo, usuarioActivo, ssl); return(guardar); } else { Msj.Error("Uno o más campos obligatorios están vacíos o con valores nulos."); return(null); } }