El codigo de la misma es este:
Código
//MySQL.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using MySql.Data; using MySql.Data.MySqlClient; namespace Pruebas { class MySql { private MySqlConnection Conexion; public MySql(String Host, String User, String Password, String Port="3306"){ try { String path = String.Format("DataSource={0};User={1};Password={2};Port={3}", Host, User, Password, Port); } catch (Exception ex) { Console.WriteLine("No de pudo conectar con MySQL: "+ex.Message); } } public bool SelectDataBase(String db) { try { if (db == String.Empty) return false; this.Conexion.ChangeDatabase(db); return true; } catch (Exception ex) { Console.WriteLine("No se pudo seleccionar la DD.BB: "+ex.Message); return false; } } ~MySql() { this.Conexion.Close(); } } }
Y en mi Form1.cs tengo este codigo:
Código
//Form1.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using MySql.Data; using MySql.Data.MySqlClient; namespace Pruebas { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { mysql.SelectDataBase("pruebas"); } } }
Deberia funcionar, pero al ejecutar mi aplicacion, en la ventana de resultados obtengo esto:
Código:
Excepción del tipo 'System.InvalidOperationException' en MySql.Data.dll
No se pudo seleccionar la DD.BB: The connection is not open.
Lo que me dice es que no se puede elegir la base indicada porque no hay una conexion abierta. Ahora lo que yo me pregunto es por qué no se abre la conexion, pero tampoco se dispara un Exception cuando intento conectar.
Es decir o se tendria que conectar o generarme una excepcion...alguna ayuda??
Saludos y muchas gracias!!!