En este tutorial enseñaremos como configurar Visual Studio.Net para conectarse con una base de datos MySQL.
En este ejemplo se están utilizando las siguientes herramientas.
- Visual Studio .Net 2008 Professional Edition
- MySQL Server 5 Community Edition
- Windows Vista Ultimate
Una de las maneras de establecer una conexión de base de datos desde la plataforma .Net es mediante ODBC el cual es un estándar de la industria para acceder a una base de datos. En el grafico a continuación se ve el flujo de control que se da cuando se usa la solución ODBC.Net para acceder a MySQL

Para iniciar se necesitara descargar e instalar el driver de ODBC de MySQL el cual se puede encontrar en esta dirección: http://dev.mysql.com/downloads/connector/odbc/5.1.html
Asegúrese de descargar la versión que sea soportada por su versión de Visual Studio, MySQL y Sistema Operativo. El proceso de instalación se muestra a continuación.




Una vez realizado esto ingresar a Start -> Control Panel-> Administrative Tools -> Data Sources (ODBC)
En la ventana ODBC Data Source Administrator hacer click en Add y seleccionar el Driver Instalado (En mi caso MySQL ODBC 5.1 Driver)


En la pantalla de configuración siguiente dele un nombre y descripción a su conexión, la ubicación del servidor (localhost ya que se trata de un servidor local), los nombres de usuario y contraseña usados para conectarse a MySQL y el nombre de la base de datos a la que quiere conectarse (En mi caso test).

Para terminar la conexión ingresar a Visual Studio.Net. En el Menú Tools hacer click en Connect to a Database…
En la nueva ventana de Dialogo que aparece seleccionar Microsoft ODBC Data Source y hacer click en Continue

En la ventana de anadir de conexión seleccionar la opción Use user or system data source name y en el menú desplegable seleccionar la creada por nosotros: Mi Conexión a MySQL.
Para finalizar ingrese sus credenciales (nombre de usuario y contraseña) nuevamente.

Haga Click en Aceptar y la conexión fue establecida!. Para poder explorar nuestra base de datos ir al menú View->ServerExplorer y expandir el nodo Data Connections


8 comments
Comments feed for this article
June 9, 2008 at 1:47 am
Oscar Barrientos
Buenas tengo una consulta, lo que sucede es que el instalador que nos han dado de mysql no viene con varios aplicativos necesarios para poder practicar, como el sql query browser y el mysql administrator…
a los que no los tengan (aunque la posibilidad de que mi instalador sea el fallado XD) aqui les dejo el link para descargarlos….
http://dev.mysql.com/downloads/gui-tools/5.0.html
lo instalan despues del mysql 5.0.1 que nos dieron en la Universidad….
ah, tuve un problema hay una forma de conectarse al mysql sin utilizar como “server” el “localhost” pero se tenia que cambiar algunas cosas con el “MySQL Server Instance Config Wizard” para que desbloquee el puerto y acepte cierto tipo de conexiones,por lo que me cuentan asi deberiamos usar a futuro las conexiones usando el nombre del servidor porque al final nos conectaremos a otro servidor no al de la misma pc en la que trabajamos…..
June 9, 2008 at 1:53 am
Oscar Barrientos
Ah me olvidaba otra cosa importante… en la version del instalador de mysql que nos dieron (o al menos la que yo traje
) no se ejecutan las sentencias como haciamos en clase (con la tecla “F9″) sino con las teclas “Ctrl + Enter” para que no existan confuciones…
June 9, 2008 at 2:20 am
joseenulima
Efectivamente Oscar, el Instalador que les dimos en la universidad solo contiene el servidor de base de datos MySQL Server. Hasta este punto el servidor acepta consultas y otros pero solo en modo consola.
MySQL Query Browser y MySQL Administrator son herramientas adicionales que proveen una interfaz mas amigable para construit consultas SQL y administrar el servidor.
En cuanto al nombre “localhost” es el nombre de la direccion IP que se da a la maquina quiere apuntar a si misma. Esta direccion es 127.0.0.1
Ya que se esta trabajando localmente es decir que la aplicacion cliente y el servidor estan en la misma maquina no es necesario desbloquear los puertos. A esto se le llama portfordwarding y es necesario cuando la base de datos necesita aceptar conexiones entrantes.
Con respecto al ultimo punto. En MySQL Query Browser se usa con la combinacion de teclas “Control + Enter” y en SQL Developer que es la herramienta con la que trabajamos en clase se usa “F9″
Gracias por participar Oscar!
July 1, 2008 at 3:20 am
jose miguel santana
me parecen muy buenos estosd apuntes son exelentes…
ehhh me gustaria saber como hacer esta misma coneccion pero no con asistente solo codigo esto siempre y cuando sea posible, les agradesco la colaboracion muchas gracias
July 5, 2008 at 8:07 am
Jaime Solis
Hola una consulta…
He estado tratando de crear un Servlet Java para la insercion de nuevas columnas en la tabla cliente, pero al momento de poner:
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
El compilador del Visual Studio no me reconoce estos paquetes, no se si hay una forma de instalarlos para el Visual o de todas maneras debo cambiarme de entorno d desarrollo… Gracias por anticipado
August 16, 2008 at 2:18 pm
fran
he realizado todos los pasos pero una vez que entro en visual y me le doy a conectar a base de datos solo me salen 3 opciones
1 access
2 microsoft sql server
3 sql server compact
no me sale odbc
que puedo hacer? gracias
June 4, 2009 at 6:19 am
morrisgrill
Yo tengo un problema, instalé MySQL mediante XAMPP y funciona perfecto con páginas php y instalaciones de Joomla, también instale el driver de ODBC para mysql 5.1 y todo muy bien hasta ahí; cuando le doy en Server Explorer en Visual Studio 2008 no me aparece nada en tables y dice que la conexión fué satisfactoria, Sin embargo aparece todos los campos acumulados en el apartado ‘Views’ ¿alguna idea de como resolver eso?
June 4, 2009 at 6:30 am
morrisgrill
PD: Verifiqué la conexión y aunque diga conexión satisfactoria pero en el apartado de Avanzado, la propiedad ‘Driver’ está vacía.. ¿eso influye en mi problema?