
Prefiere el consumo de lo Hecho en México
BúsquedaHagamos que México crezca..
![]() Prefiere el consumo de lo Hecho en México Posts Recientes
Conversación |
Conectando C# .Net al Servidor de Base de Datos de Software Libre MySQLHoy quise probar una propiedad de un DataGrid con C# .NET para ir avanzando con el desarrollo de una aplicación, pero el desarrollo se conecta a un Servidor de MS SQL Server ya que es con lo que cuenta el cliente debido a los requerimientos de su ERP, solo que aqui en casa no tengo acceso al servidor de MS SQL Server y no podía probar el datagrid ya que era necesario mostrar los datos para hacer mis pruebas.
Como en este caso lo que quería es hacer pruebas sobre el DataGrid no sobre la base de datos, se me ocurrió como solución rápida conectar el datagrid a un servidor de MySQL Server aprovechando que también cuenta con un componente ADO .NET. Lo primero que hice fué descargar el componente de la siguiente URL, luego instalarlo y agregar la referencia a un proyecto temporal que cree: Aprovechando el estándar de la tecnología ADO, la cuál da una ventaja de que los métodos y propiedades del componente son iguales en las diversas conexiones de Datos, es decir puedo reciclar mi clase con todo métodos y propiedades que realiza la conexión ADO a un servidor de SQL Server ó SQLite para conectarme a un servidor de MySQL, lo único que cambia es el string de inicialización de la conexión, que en mi caso fué lo único que cambié y de ahi pude reusar todos mis métodos previamente programados para MS SQL Server. Rápidamente pongo parte del código de como mando a llamar la clase desde un botón. Obviamente para un proyecto es conveniente definir la instancia de la clase de MySQL como una propiedad de la clase de la forma, solo que para fines prácticos declaré el objeto MySQL dentro del evento del botón y desde ahí mismo lo operé.
private void button1_Click(object sender, EventArgs e) { string sql_query = ""; MySQL db = new MySQL("localhost", "user", "password", "db"); if (db.OpenConnection() > 0) { try { sql_query = " select * from opciones "; DataSet temp = db.DataSet(sql_query, "opciones"); dataGridView1.DataSource = temp.Tables[0]; temp.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } finally{} } }
using System; using System.Collections.Generic; using System.Text; using System.Data; using MySql.Data.MySqlClient; using System.Collections; using System.Windows.Forms; namespace WindowsApplication1 { class MySQL { public string StringConnection; public MySqlConnection _SQLConnection; public MySqlCommand _SQLCommand; public MySqlDataReader _SQLReader; public string MySQLServer; public string MySQLUser; public string MySQLPassword; public string MySQLdatabase; public MySQL(string Server, string User, string Password, string database) { MySQLServer = Server; MySQLUser = User; MySQLPassword = Password; MySQLdatabase = database; StringConnection = "server="+MySQLServer+"; user id="+MySQLUser+"; password="+MySQLPassword+"; database="+MySQLdatabase+"; pooling=false;"; } public int OpenConnection() { int status_function = 0; try { _SQLConnection = new MySqlConnection(StringConnection); _SQLConnection.Open(); _SQLCommand = _SQLConnection.CreateCommand(); status_function = 1; } catch { status_function = 0; } return status_function; } public DataSet DataSet(string SQLQueryCMD) { Cursor.Current = Cursors.WaitCursor; DataSet dsResult = new DataSet(); try { _SQLCommand.CommandText = SQLQueryCMD; MySqlDataAdapter adapter = new MySqlDataAdapter(SQLQueryCMD, _SQLConnection); adapter.Fill(dsResult); adapter.Dispose(); } catch { } finally { Cursor.Current = Cursors.Default; } return dsResult; } }//fin de la clase }//fin del namespace El contructor genera el string para iniciar la conexión al servidor MySQL. Ya probando la conexión con MySQL y teniendo datos en el DataGrid, pude llevar a cabo mis pruebas sobre el DataGrid, la cuál para el proyecto solo sería cuestión de agregar los nuevos métodos a la clase. Para mayor información sobre la tecnologia qué fué inicialmente desarrollada por la empresa Microsoft de ADO pueden consultar la información disponible en la página de la WikiPedia. #2 Re: Conectando C# .Net al Servidor de Base de Datos de Software Libre MySQLBueno creo que si instalo el Connector/Net 5.2 no hay problema, jejeje :D [ Responder (0) ]
#3 Re: Conectando C# .Net al Servidor de Base de Datos de Software Libre MySQLDisculpa, como puedo hacer para esto mismo solo que en una aplicacion para windows mobile 5.0, lo que sucede es que instalo el mysql connector/net 5.2.4, pero al momento de agregar la libriria MySql.Data.dll al proyecto e iniciar el debug, empieza a cargar la libreria en el emulador, hasta que sale el error que ya no tiene suficiente memoria, y no puede seguir.... [ Responder (0) ]
Dejar un comentario
Fuentes XML de comentario: RSS | Atom
|
Nube de EtiquetasEventosEncuestaComentarios Recientes
|
#1 Re: Conectando C# .Net al Servidor de Base de Datos de Software Libre MySQL
Hola de nuevo,
Disculpa, fijate que al momento de instalar el adaptador para MySQL .net que tienes en el link, me pide instalar el Framework 1.1, y eso me suena raro porque yo tengo instalado VS 2008 y ese incluye Framwork 3.5.