Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.9 kB
1
Indexable
Never
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using MySql.Data.MySqlClient;

namespace laboratorio
{
    public class ConexionBD
    {
        private MySqlConnection conexion;
        private string servidor = "localhost"; // Nombre del servidor de la base de datos
        private string puerto = "3306"; // Puerto de la base de datos
        private string usuario = "root"; // Usuario de la base de datos
        private string contrasena = ""; // Contraseña del usuario de la base de datos
        private string baseDatos = "espacios"; // Nombre de la base de datos

        public ConexionBD()
        {
            string cadenaConexion = "server=" + servidor + ";port=" + puerto + ";user=" + usuario + ";password=" + contrasena + ";database=" + baseDatos + ";";
            conexion = new MySqlConnection(cadenaConexion);
        }

        public bool AbrirConexion()
        {
            try
            {
                conexion.Open();
                return true;
            }
            catch (MySqlException ex)
            {
                // Manejar excepción de conexión
                return false;
            }
        }

        public void CerrarConexion()
        {
            conexion.Close();
        }

        public DataTable EjecutarConsulta(string consulta)
        {
            DataTable tabla = new DataTable();

            if (AbrirConexion())
            {
                MySqlCommand comando = new MySqlCommand(consulta, conexion);
                MySqlDataAdapter adaptador = new MySqlDataAdapter(comando);
                adaptador.Fill(tabla);
                CerrarConexion();
            }

            return tabla;
        }

        public MySqlConnection GetConnection()
        {
            return conexion;
        }
    }
}