Está en la página 1de 7

E J E R C I C I O S D E P R C T I C A

PRACTICA # 8


DATOS DE PRCTICA

NOMBRE DE LA CARRERA Licenciatura En Ingeniera En Sistemas De Informacin
NUMERO DE CUATRIMESTRE 5
* TIPO PRCTICA Parcial No.1 FECHA 2/02/2012
NOMBRE DE LA ASIGNATURA Programacin MySQL
PRACTICA No. Practica #8

NOMBRE DEL PROFESOR Ing. Aldryn Jess Osorio Hernndez. MSC.

EVALUACION El contenido de este ejercicio deber ser resuelto en clase y
entregado al profesor

CONTENIDO DE LA PRCTICA

Primero iniciaremos un proyecto nuevo de winforms con C# en Visual Studio 2010, y crearemos una UI
muy simple, que contendr un data grid view y un botn para realizar la consulta, mirndose de la
siguiente manera:

La base de datos es la misma usada en ejemplos anteriores, es la BD Sakila que se puede descargar desde
la pgina de MySQL, si no hganla con la BD que ustedes deseen.
E J E R C I C I O S D E P R C T I C A

PRACTICA # 8

Para comenzar tenemos que tener instalado el connector de MySQL y por si acaso tendremos que
agregarlo en referencias:


Y a continuacin buscamos MySQL.Data

Y damos OK.
E J E R C I C I O S D E P R C T I C A

PRACTICA # 8

En nuestro Form, nos vamos al cdigo para empezar a realizar la conexin a la Base de datos
Agregamos la biblioteca de MySQL a nuestra seccion using

Y despus vamos a realizar un mtodo llamado iniciarConexion() que lo mandamos a llamar en el
constructor

Utilizamos MySqlConnection para realizar la conexin, esta clase es proporcionada por
MySql.Data.MySqlClient. En lo que tengo resaltado, simplemente creamos un objeto connection y una
cadena, que guardara todos los datos de conexin a nuestra base de datos en mySQL.
En los bloques try- catch se realiza la conexin, primero estableciendo toda la informacin que se tiene en
esa cadena, en Uid pones el nombre de tu usuario de mySql y en Pwd tu password. Se asigna esa cadena a
ConnectionString para que as con Open realice la conexin. En dado caso de que el usuario o el password
o algn dato en la cadena este mal pues surgir el mensaje puesto dentro del bloque catch.
E J E R C I C I O S D E P R C T I C A

PRACTICA # 8


Una vez conectados a MySQl, ahora hay que hacer querys
Primero debemos de crear una clase que se llamara Actor.cs.
Cree una clase nueva.
1. En el men Proyecto, haga clic en Agregar clase.
2. En el cuadro de dilogo Agregar nuevo elemento, en Nombre de clase escriba Actor y, a
continuacin, haga clic en Abrir.

Nota
En Visual C# 2005, Abrir ha cambiado por Agregar.
3. Examine el cdigo de la nueva clase en la ventana Vista Cdigo.
Para tener ms control sobre los elementos definidos por el usuario cuando se generan clases, se puede
escribir el cdigo o bien agregar la clase mediante la Vista de clases.
La clase Actor, tiene el siguiente cdigo con 2 propiedades como se muestra:
E J E R C I C I O S D E P R C T I C A

PRACTICA # 8


Ahora regresamos al cdigo del formulario. Recuerdan donde creamos la cadena connectionString?, debajo
declararemos una Lista global que contendr objetos de tipo Actor y lo podemos hacer de la siguiente
manera:


Y con el botn que hemos agregado, vamos a dar doble clic para crear un evento y poner el siguiente
cdigo:
E J E R C I C I O S D E P R C T I C A

PRACTICA # 8


Vamos por pasos:
Primero creamos un objeto de la clase MySqlCommand que ser nuestro objeto que realiza la consulta, en
CommandText le asignamos que consulta har, en este caso es un simple SELECT con 2 campos de la
tabla Actor;
De MySqlDataReader creamos el objeto reader que este ser el que reciba los datos devueltos por la
consulta. Yo creo que queda mas que claro en la tercer lnea con ExecuteReader se ejecuta la consulta y
devuelve un objeto que contiene todos los datos, y este viene siendo el objeto reader.
En este bucle while la condicin esta en el mtodo Read, afirma si hay o no resultados en la consulta, si los
hay se posicionara en la primer fila de los resultados (por que lo que devuelve la consulta es otra tabla)
mientras se siga comprobando si hay mas resultados, Read ira posicionando a filas diferentes de la tabla
para as agarrar los resultados de las dems filas, se crea un objeto Actor y se le asignan las 2 propiedades
correspondientes de la fila actual que arrojo la consulta, y se agregan a la lista Actores, y posteriormente,
cuando ya se tienen todos los datos guardados en la lista, se le asigna un datasource a nuestro data grid
view y este viene siendo la lista
Ahora hay que liberar recursos!, ya que por lo regular siempre se hacen mas de dos consultas, para eso nos
vamos debajo de donde asignamos el datasource a nuestro grid view

y tambin algo muy importante, es cerrar la conexin, lo haremos en un evento del form FormClosing
E J E R C I C I O S D E P R C T I C A

PRACTICA # 8


Y el resultado final ser el siguiente: