Curso ADO.NET con Mono y MySQL – Conexión con la base de datos
Lo primero que debemos hacer cuando trabajamos en una aplicación que se conecta a un servidor, aunque sea en el mismo equipo físicamente hablando, será conectarnos al mismo. La clase que utilizaremos será MySqlConnection presente en el espacio de nombres que hemos importado del ensamblado.
Antes de probar la conexión, necesitaremos crear una base de datos de ejemplo en nuestro servidor de MySQL. Para ello nos dirigimos al terminal y escribimos:
$ mysql -u root -p
Nos pedirá la contraseña que le hayamos asignado al servidor y estaremos ya en la shell de MySQL. Creamos la base de datos para las pruebas (yo la he llamado lpmagazine):
> create database linuxhispano
Una vez creada, pasamos a seleccionarla para usarla:
> use linuxhispano
Ya tenemos la base de datos creada dentro del servidor. Posteriormente agregaremos una tabla y registros para los siguientes puntos, pero por ahora esto nos es suficiente.
¿Qué tenemos que hacer para crear una conexión? Básicamente el esquema de conexión se reduce a los siguientes pasos:
- Creamos el objeto conexión
- Le asignamos la cadena de conexión que tendrá la siguiente forma: “database=nombre_base_datos;server=servidor;user id=usuario; pwd=contraseña“, por ejemplo: “database=linuxhispano;server=localhost;user id=root; pwd=contraseña“
- Abrimos la conexión
- Efectuamos las operaciones pertinentes
- La cerramos
En este caso de ejemplo imprimiremos el estado de la conexión. Si todo está bien debería poner “open” en el momento en que lo vamos a imprimir. Además, capturaremos posibles expcepciones.
Veamos el código a continuación:
public static void Main(string[] args) { try { MySqlConnection conexion = new MySqlConnection(); conexion.ConnectionString = "database=linuxhispano; server=localhost;user id=root; pwd=contraseña"; conexion.Open(); Console.WriteLine(conexion.State); conexion.Close(); } catch(MySqlException exc) { Console.WriteLine("Ocurrió un error: " + exc.Message); } }
En la documentación para desarrolladores de MySQL tenéis una referencia completa de todos los métodos y propiedades de las distintas clases de conexión (y todas las que explicaremos) donde podréis profundizar más en este tema una vez os hayáis familiarizado.