27
UNIVERSIDAD DE CORDOBA FACULTAD DE INGENIERIAS PROGRAMA INGENIERIA DE SISTEMAS CURSO: Electiva de profundización I (desarrollo de software libre) TEMA: Bases de Datos en C# DESCRIPCION: En este documento se hace un estudio de las bases de datos pasando por los ensamblados y clases que son requeridos en el lenguaje C# para el tratamiento de las bases de datos, hasta llegar a la implementación de una solución tipo GUI en el IDE MonoDevelop para presentar la demostración correspondiente en la manipulación de una base de datos a través de una interfaz implementada bajo este lenguaje. Para el ejemplo que se va a desarrollar se declararan 2 clases, de las cuales una de ellas se encargara de la implementación del método encargado de la conexión entre la aplicación y la base de datos que fue creada con el IDE Mysql. OBJETIVO: Diseñar e implementar en el lenguaje C# las clases necesarias para poder interactuar con una base de datos, construyendo el programa de ejemplo en el IDE MonoDevelop para los sistemas Windows. PALABRAS CLAVES: Ensamblado System.data, ensamblado System.Data.MySqlClient, clase MySqlConnectionStringBuilder, clase MySqlDataReader, clase MySqlConnection, clase MySqlCommand.

MANUAL BD CON C#

Embed Size (px)

Citation preview

Page 1: MANUAL BD CON C#

UNIVERSIDAD DE CORDOBA

FACULTAD DE INGENIERIAS

PROGRAMA INGENIERIA DE SISTEMAS

CURSO: Electiva de profundización I (desarrollo de software libre)

TEMA: Bases de Datos en C#

DESCRIPCION: En este documento se hace un estudio de las bases de datos

pasando por los ensamblados y clases que son requeridos en el lenguaje C# para

el tratamiento de las bases de datos, hasta llegar a la implementación de una

solución tipo GUI en el IDE MonoDevelop para presentar la demostración

correspondiente en la manipulación de una base de datos a través de una interfaz

implementada bajo este lenguaje.

Para el ejemplo que se va a desarrollar se declararan 2 clases, de las cuales una

de ellas se encargara de la implementación del método encargado de la conexión

entre la aplicación y la base de datos que fue creada con el IDE Mysql.

OBJETIVO: Diseñar e implementar en el lenguaje C# las clases necesarias para

poder interactuar con una base de datos, construyendo el programa de ejemplo en

el IDE MonoDevelop para los sistemas Windows.

PALABRAS CLAVES: Ensamblado System.data, ensamblado

System.Data.MySqlClient, clase MySqlConnectionStringBuilder, clase

MySqlDataReader, clase MySqlConnection, clase MySqlCommand.

Page 2: MANUAL BD CON C#

1. BASES DE DATOS EN C#

El lenguaje C# ofrece un soporte completo para el tratamiento de las bases

de datos, en la cual se pueden realizar las diferentes operaciones tal y

como son la inserción, edición, eliminación de datos en una tabla dentro de

una base de datos. Algunas de las clases necesarias para trabajar con

bases de datos son proporcionadas por el ensamblado System.Data el cual

debe ser agregado a través de las referencias, puesto que no viene

importado por defecto. A su vez si se pretende utilizar a MySql como motor

de base de datos, es necesario contar con el conector para .NET

correspondiente y a su vez agregar la librería MySql.Data.dll a través de

las referencias del proyecto que se está diseñando.

1.1. Clase MySqlConnectionStringBuilder

Esta es la clase que permite realizar la conexión a la base de datos,

esta clase dispone de los siguientes métodos.

Server: método que permite definir el servidor con el cual se piensa

acceder a la base de datos, el cual generalmente es localhost.

UserID: método que permite definir el nombre de usuario de la base

de datos a la cual se desea conectar, el cual es root generalmente.

Database: método a través del cual se permite definir el nombre de

la base de datos a la cual se quiere conectar.

Password: método que permite la definición de la contraseña

respectiva para poder establecer la conexión con la base de datos.

Page 3: MANUAL BD CON C#

2. Presentación del ejemplo

Para el ejemplo práctico haremos el diseño y la implementación de las

clases requeridas para establecer la conexión entre la interfaz y la base de

datos, y la clase que contendrá cada uno de los atributos estipulados en el

formulario y a su vez en nuestra base de datos. La clase TConexión será la

encargada de establecer la conexión entre la interfaz y la base de datos.

La aplicación será de tipo GUI con GTK# y se empleara un TreeView para

almacenar cada uno de los datos contenidos en las tablas de la base de

datos.

Page 4: MANUAL BD CON C#

3. Creación de la solución

Para desarrollar el programa de ejemplo de Bases de datos, crearemos una

nueva solución GTK#2.0 en MonoDevelop de la siguiente manera:

a) Archivo – nueva – solución

b) Seguidamente en la próxima ventana que nos aparecerá,

seleccionaremos el nodo C# y después escojamos la opción GTK#2.0,

daremos BD al nombre de nuestra solución y damos click en el botón

Forward.

Page 5: MANUAL BD CON C#

c) En la siguiente ventana solo daremos click en el botón OK.

Page 6: MANUAL BD CON C#

d) Y finalmente se nos creara la siguiente ventana

e) Ahora procedemos con la instalación de nuestro conector para .NET

para después agregarlo a nuestra solución. Este conector lo

descargamos de la página de MySql – opción descargas.

Para este caso el conector es la versión 5.2.7.

Page 7: MANUAL BD CON C#

f) Luego de haber realizado la simple instalación del conector,

procedemos a agregarlo a nuestra solución de la siguiente manera.

1. Damos click derecho en Referencias y escojamos Editar referencias.

g) Luego seleccionamos la pestaña Ensamblado.Net.

Page 8: MANUAL BD CON C#

h) vamos a ir a la ruta donde se instalo el conector mysql.Data ,

generalmente se instala dentro del directorio donde está instalado Mysql

en el directorio raíz Archivos de programa. Ahora escojamos la carpeta

MySQL Connector Net y click al subdirectorio Binaries y abrimos la

carpeta .Net 2.0 y seleccionamos Mysql.Data.dll y click en Add.

i) Si todo se hizo de forma correcta, deberá aparecernos el campo de

Referencia tal y como se muestra a continuación, damos click en OK.

Page 9: MANUAL BD CON C#

Ahora añadimos una nueva clase a la cual llamaremos TConexión, a la cual

vamos a importarle los ensamblados System.Data y System.Data.MySqlClient.

Después nos aseguramos de que la clase quede implementada de la siguiente

manera.

Page 10: MANUAL BD CON C#

Ahora agregamos una nueva clase llamada TCampos, la cual debemos

asegurarnos que la implementación sea la siguiente.

Page 11: MANUAL BD CON C#

Ahora nos trasladamos a la clase MainWindows.cs y escojemos la

opción Diseñador, la cual está en la parte inferior de la ventana.

Page 12: MANUAL BD CON C#

Procedemos ahora a arrastrar al formulario el contenedor Fixed.

Luego de haber arrastrado el contenedor, nos debe quedar el formulario de la

siguiente manera.

Page 13: MANUAL BD CON C#

Ahora arrastramos al formulario, 4 Button, 6 Entry, 7 An label, 1 Menu Bar, 1 Tree

View, 1 Combo Box y hacemos los ajustes necesarios para que nos quede la

ventana diseñada de la siguiente manera.

Para editar el nombre de los labels, solo basta seleccionar el label y damos click a

la pestaña propiedades de la barra de herramientas, allí están las diferentes

propiedades que podemos cambiarle a las etiquetas, así mismo modifican los

Entry, Menu Bar, combo Box y el TreeView.

Finalmente damos click a la pestaña código fuente de la clase MainWindows y

agregamos las siguientes líneas de código mostradas a continuación.

Page 14: MANUAL BD CON C#

Seguidamente creamos el método que crea las columnas en nuestro TreeView.

Construyamos el método encargado de leer cada uno de los campos de la tabla

personas de nuestra base de datos y los muestra en nuestro TreeView.

Page 15: MANUAL BD CON C#

Construyamos un método que verifica que todos los campos estén llenos antes de

ingresarlos a la base de datos.

Page 16: MANUAL BD CON C#

Ahora construyamos el método que permite agregar un nuevo registro a nuestra

base de datos.

Ahora hagamos un método que limpie cada una de las cajas de texto de la

ventana cada vez que sea necesario.

Page 17: MANUAL BD CON C#

Construyamos el método que permite cargar la información de un campo de la BD

en cada caja de texto de la ventana, para ser modificado el dato que sea

necesario, para ello usamos el ID de la persona que queremos editarle datos.

Construyamos el método que permita eliminar un registro de la base de datos,

utilizando el ID de la persona como parámetro. La caja de texto que captura el ID

tiene por nombre entry1.text.

Page 18: MANUAL BD CON C#

Seguidamente nos aseguramos que el método Buscar quede implementado de la

siguiente manera como lo muestra la grafica siguiente. Este método será el

encargado de realizar una búsqueda de un registro en la base de datos a través

del nombre de la persona y mostrar en tiempo de ejecución todos los nombres que

coincidan con los parámetros de búsqueda.

Page 19: MANUAL BD CON C#

Ahora vamos a construir el método que tiene como finalidad modificar cualquier

dato de un registro de la base de datos, para ello este método recibe como

parámetro cada uno los campos que conforman la información de un registro, tal y

como lo son el id, nombre, apellido, edad etc.

Este método realiza las modificaciones correspondientes con el id de la persona,

para ello basta ingresar el id de la persona a modificar datos, luego click al botón

cargar datos y finalmente realizamos los cambios deseados y pulsamos el botón

modificar.

Page 20: MANUAL BD CON C#

Una vez tengamos construidos todos los métodos que se explicaron con

anterioridad, procedemos a agregar algunos de ellos al método MainWindow, el

cual es el encargado de construir la ventana. Nos aseguramos de agregar los

métodos CrearColumnas(), CargarDatos(), y además adicionamos una línea de

código que permita colocar el foco en la caja de texto nombre por cada ejecución

que se realice.

Page 21: MANUAL BD CON C#

Ahora procedemos a crear los eventos para cada uno de los botones de la

ventana, para ello vamos a la pestaña propiedades de la barra de herramientas,

luego seleccionamos el botón y en la pestaña señales damos doble click sobre la

opción clicked.

Ahora se nos creará el evento para el botón agregar, al cual le agregamos las

siguientes líneas de código.

Page 22: MANUAL BD CON C#

De igual forma creamos el evento para el botón Modificar y agregamos las líneas

de código siguientes.

Ahora vamos a digitar las siguientes líneas de código en el evento del botón

cargar datos.

Page 23: MANUAL BD CON C#

Ahora procedamos con la implementación del evento para el botón eliminar.

Seguidamente vamos a crear el evento para la caja de texto que realiza la

búsqueda de un registro con su nombre.

Page 24: MANUAL BD CON C#

En el evento para la caja de texto, nos aseguramos que quede de la siguiente

manera.

Y por ultimo vamos a crear el evento para las opciones Salir y Limpiar del Menú

Archivo. Para ello vamos a iniciar con el evento de la opción salir.

Y en su evento respectivo agregamos lo siguiente.

Page 25: MANUAL BD CON C#

Ahora construyamos el evento para la opción Limpiar del menú Archivo.

Ahora vamos a mostrar nuestra base de datos llamada clientes, la cual contiene a

la tabla personas.

Page 26: MANUAL BD CON C#

Ahora mostremos la estructura de la tabla personas, con el fin de conocer su

diseño.

Finalmente vamos a mostrar nuestra aplicación ya en funcionamiento.

Page 27: MANUAL BD CON C#

REFERENCIAS BIBLIOGRAFICAS

http://undiati.com/2011/09/24/trabajando-c-mysql-mono-monodevelop/

http://www.eslomas.com/2008/04/experimentos-con-mono-monodevelop-y-

mysql/

http://luauf.com/2008/06/08/mono-con-mysql/

http://mittaus.wordpress.com/2011/04/02/conectar-monodevelop-con-mysql/

http://apuntes-para-no-olvidar.blogspot.com/2011/04/trabajar-con-el-

conector-de-mysql-en.html