MySQL, considerada "la base de datos de código abierto más popular del mundo", ha recorrido un largo camino desde sus humildes comienzos como servidor de bases de datos de bajo costo hasta un servidor que maneja enormes sitios web e importantes sistemas comerciales. Sin embargo, si es desarrollador de ASP.NET, siempre encontrará una insatisfacción: MySQL fue diseñado originalmente para aplicaciones en la plataforma UNIX, por lo que el soporte para Windows es secundario.
Pero ahora, la versión de MySQL para Windows tiene las mismas características y estabilidad que la versión UNIX, y se considera un servidor de base de datos viable para el desarrollo de Windows. Ahora veamos cómo puede conectarse a una base de datos MySQL dentro del marco .NET usando ODBC.
Instalación
Descargue e instale la versión de Windows de MySQL. La instalación es fácil: simplemente siga las instrucciones y estará listo y funcionando en poco tiempo. Si encuentra algún problema, puede ir al foro de MySQL para buscar ayuda y soluciones.
Para conectar ASP.NET y MySQL, necesita utilizar ODBC.NET. En términos generales, el DataProvider de ODBC.NET es parte del framework .NET estándar (versión 1.1 y superior), por lo que se instalará automáticamente con este último.
Una vez que confirme que ODBC.NET está instalado, deberá descargar el controlador ODBC para MySQL. Una vez más, los desarrolladores de MySQL estarán encantados de ayudar: proporcionan estos controladores en su sitio web. Puede leer el documento de preguntas frecuentes al descargar el archivo, que enumerará todos los problemas que puede encontrar durante la instalación del controlador ODBC de MySQL en su sistema.
¿Todo listo? Ahora comencemos con algo de código.
Conexión a MySQL con ASP.NET
Una de mis actividades favoritas es leer, y cuando no estoy escribiendo artículos instructivos como este, encuentro un rincón tranquilo para completar mi lista de bibliografía. Desafortunadamente, no soy una persona muy organizada, por lo que esto a menudo resulta un desastre.
Entonces, ¿qué tiene esto que ver con el tema del que vamos a hablar hoy? Bueno, ese es el comienzo de mi primer ejemplo, que consiste en crear una base de datos de libros como los de la Lista A.
Para crear esta tabla, utilice la siguiente consulta SQL:
CREAR TABLA `libros` (
`id` int(5) NO NULL auto_increment,
`título` varchar(255) NOT NULL predeterminado '',
`autores` varchar(255) NOT NULL predeterminado '',
`year_of_publication` año(4) NOT NULL valor predeterminado '0000',
`date_added` fecha NO NULL valor predeterminado '0000-00-00',
CLAVE PRIMARIA (`id`)
) TIPO=MyISAM;
Para ejecutar esta consulta, debe utilizar el software cliente de línea de comandos "mysql.exe" en la carpeta "bin" del directorio de instalación de MySQL. Los siguientes son los comandos específicos:
c:mysqlbin>mysql -u invitado -p prueba
Introduzca la contraseña: ******
Bienvenido al monitor MySQL. Los comandos terminan en ; o g.
Su ID de conexión MySQL es 13 para la versión del servidor: 4.0.12-nt
Escriba 'help;' o 'h' para obtener ayuda. Escriba 'c' para borrar el búfer.
mysql> CREAR TABLA `libros` (
-> `id` int(5) NO NULL auto_increment,
-> `título` varchar(255) NO NULO predeterminado '',
-> `autores` varchar(255) NOT NULL predeterminado '',
-> `año_de_publicación` año(4) NOT NULL valor predeterminado '0000',
-> `date_added` fecha NO NULL valor predeterminado '0000-00-00',
-> CLAVE PRIMARIA (`id`)
-> ) TIPO=MyISAM;
Consulta correcta, 0 filas afectadas (0,02 segundos)
Una vez creada la tabla "libros", puede comenzar a insertar datos. La Lista B enumera algunos elementos. Ahora, haga lo mismo con ASP.NET: ejecute la consulta SELECT (Listado C) y muestre los resultados en el navegador. Si todo está bien (el servidor MySQL se está ejecutando, el controlador ODBC de MySQL está instalado correctamente y la tabla Libros contiene datos), debería ver una página como la de la Figura A.
la Figura C muestran el mensaje de error que aparecerá cuando el script intente acceder a una tabla de base de datos inexistente (tenga en cuenta que las excepciones generadas por la estructura interna "try-catch" serán manejadas por la estructura externa):
anterior es una introducción a cómo utilizar el control del servidor DataGrid de MySQL y ASP.NET. Hay mucho más que decir sobre cómo se pueden utilizar estas dos tecnologías, así que espero que este artículo y los demás recursos de referencia proporcionados anteriormente le ayuden a familiarizarse con ellas.