46
Programación .NET III Unidad 3. Manipulación de datos mediante .NET Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software Ingeniería en Desarrollo de Software 9º Cuatrimestre Programa de la asignatura: Programación .NET III Unidad 3. Manipulación de datos mediante .NET Clave: 150930934 Universidad Abierta y a Distancia de México UnADM

Unidad 3 Manipulacion de datos mediante .NET.pdf

Embed Size (px)

Citation preview

Page 1: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software

Ingeniería en Desarrollo de Software

9º Cuatrimestre

Programa de la asignatura:

Programación .NET III

Unidad 3. Manipulación de datos mediante .NET

Clave:

150930934

Universidad Abierta y a Distancia de México

UnADM

Page 2: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 1

Índice

Unidad 3. Manipulación de datos mediante .NET ................................................................. 2

Presentación de la unidad ...................................................................................................... 2

Propósitos ............................................................................................................................... 2

Competencia específica ......................................................................................................... 3

3.1. Conexión con MySQL mediante. NET ............................................................................ 3

3.1.1 Clases MySql.Data.SqlClient ........................................................................................ 3

3.1.2. MySqlConnection ......................................................................................................... 6

Actividad 1. Mysql.Data.SqlClient .........................................................................................14

Actividad 2. MysqlConnection ...............................................................................................15

3.2. Manipulación de datos....................................................................................................16

3.2.1. MysqlDataAdapter .......................................................................................................16

Actividad 3. MysqlDataAdapter .............................................................................................19

3.2.2. MysqlCommand...........................................................................................................20

Actividad 4. MysqlCommand .................................................................................................23

3.3. Implementación de la aplicación ....................................................................................24

3.3.1. Lectura de información mediante VB .NET ................................................................25

3.3.2. Actualización de una base de datos MySQL mediante VB .NET ...............................34

Autoevaluación ......................................................................................................................41

Evidencia de aprendizaje. Manipulación de datos................................................................42

Autorreflexiones .....................................................................................................................43

Cierre de unidad ....................................................................................................................43

Para saber más .....................................................................................................................44

Fuentes de consulta ..............................................................................................................44

Page 3: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 2

Unidad 3. Manipulación de datos mediante .NET

Presentación de la unidad

Te damos la más cordial bienvenida a la Unidad 3 Manipulación de datos mediante. NET

en la cual se abordarás temas relacionados con la interacción entre Visual Basic.NET y

una base de datos.

En la unidad 1 Conexión con bases de datos en .NET se abordaron las tecnologías .NET

de acceso a datos, el uso de la tecnología ADO .NET para recuperar y modificar datos así

como los análisis de requerimientos y el diseño de una base de datos relacional.

En la unidad 2 Diseño de interfaces mediante .NET se abordaron temas sobre la forma en

que se utiliza el entorno de desarrollo para Visual Basic .NET el cual será Visual Studio

2010, aprendiste cómo iniciar un nuevo proyecto hasta los componentes comunes que

.NET brinda para el desarrollo de software.

En esta unidad se realizará una interacción entre VB .NET y una base de datos, para ello

revisarás cómo se utiliza la clase MySqlCient la cual se conforma con librerías que

proporciona MySQL en .NET para trabajar con sus bases de datos y MySqConnection

para realizar la conexión a una base de datos desde VB .NET. Se explicará la forma en

que es posible manipular datos con las clases MySqlcommand y MySqlDataAdapter, con

el fin de que se realice un formulario para interactuar con una base de datos creada en

MySQL.

Propósitos

Al finalizar el estudio de esta unidad podrás:

Examinar los requerimientos técnicos para poder desarrollar un caso práctico de

manipulacion de datos mediante .NET.

Emplear la tecnología .NET y MySQL para desarrollar aplicaciones de escritorio y

así dar solución a un problema de conexión de datos planteado.

Resolver problemas relacionados con el procesamiento de la información y la

automatización de procesos, para darles solución mediante una aplicación de

escritorio desarrollada con la tecnologia MySQL y VB .NET.

Page 4: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 3

Competencia específica

Implementar una aplicación de escritorio para interactuar con información almacenada en

una base de datos, utilizando los diferentes recursos de desarrollo de software que

proporciona la tecnología .NET.

3.1. Conexión con MySQL mediante. NET

La conexión a la base de datos de MySQL es uno de los aspectos más importantes

cuando se trabaja con grandes cantidades de información en aplicaciones de escritorio

pero es importante considerar que establecer correctamente la comunicación entre el

origen de datos y los registros implican garantizar la seguridad y funcionamiento de la

base de datos con la aplicación.

En este tema se explicará cómo funcionan las clases MySql.Data.SqlClient y

MySqlConnection ya que estas dos clases trabajan en conjunto para ejecutar la conexión

con la base de datos por una parte la clase MySqlConnection que hace referencia a

controlador de MySQL que contendrá los datos necesarios para la conexión y

MySql.Data.SqlClient que ejecutará las sentencias Sql y a la clase MySqlConnection.

En este tema se abordarán el procedimiento y requerimientos para conectar una base de

datos con una aplicación en .NET. Conocerás los métodos y configuración necesarios

para poder establecer una conexión con la base de datos MySQL utilizando el conector

para .Net. MySqlConnector.

3.1.1 Clases MySql.Data.SqlClient

En este tema comprenderás la importancia del uso de la clase MySql.Data.SqlClient ya

que contiene los métodos necesarios para poder realizar una conexión con el manejador

de base de datos MySQL sin el uso de MySql.Data.SqlClient no se podrá interactuar con

la base de datos de MySQL. El MySQL.Data.SqlClient contiene las clases que se utilizan

para crear una conexión básica con MySQL que es el proveedor de datos de .NET

(MySQL, 2013e).

MySql.Data.SqlClient describe una colección de clases que son utilizadas para poder

tener accesos a la base de datos de MySQL, este permite rellenar un objeto DataSet

residente en memoria para poder consultar y actualizar la base de datos de MySQL.

Page 5: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 4

Para poder hacer uso de estas clases contenidas en el MySQL.Data.SqlClient se necesita

instalar el controlador de MySQL MySql Connector que se proporcionan gratuitamente en

la página oficial de MySQL para Visual Basic. La forma de instalación se explicará en el

siguiente tema 3.1.2. MysqlConnection.

Primeramente se debe importar la clase MySql.Data.SqlClient para poder hacer uso del

ODBC (Open DataBase Connectivity) que este se refiere a un estándar para tener acceso

a los datos de una aplicación haciendo uso de cualquier gestor de base de datos, en este

caso de MySql para Visual Basic y de esta manera hacer la conexión con la base de

datos de MySQL.

A continuacion se muestra un ejemplo donde se hace uso de MySql.Data.SqlClient para

hacer una conexión con una base de datos de MySQL con el nombre de “alumnos”.

Pantalla Conexión de una base de datos de MySQL (MySQL, 2013e)

En la imagen anterior se muestra un ejemplo donde se importa la clase

MySql.Data.SqlClient al importar esta clase se hace uso del conector de MySQL así como

la clase MySqlConnection que contendrá los datos de nombre de servidor de la base de

datos, usuario, contraseña y el nombre de la base de datos que en este caso es

Alumnos.

Otras clases de MySql.Data.SqlClient más utilizadas comúnmente en una conexión a la

base de datos son MySqlException y MySqlError.

MySqlException: Este se utiliza en el manejo de excepciones cuando se quiere

recuperar un erro en la conexión en base de tatos. Ejemplo:

Se importa la clase

MySql.Data.MySqlClient

Parámetros para la conexión

a la base de datos

Page 6: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 5

Uso de MySqlExcepton en una conexión a la base de datos (MySQL, 2013e)

En el ejemplo anterior se hace uso de una excepción para que el programa siga corriendo

sin mostrar nada si llegara a ocurrir algún error durante la ejecución, este código es para

conectarse con la base de datos y mostrar datos de una tabla.

MySqlError: Permiete recuperar una colección de errores que puede ser deltas por el

servidor. Ejemplo:

Uso de MySqlError en una conexión a la base de datos (MySQL, 2013e)

En el ejemplo anterior se hace uso del mismo código que a diferencia de MySqlException

este recupera el número de error que puede presentarse durante la ejecución del

programa.

La clase MySql.Data.SqlClient es de suma importancia cuando se desea hacer una

conexión con la base de datos de MySQL ya que éste contiene los las clases necesarias

para comunicar los datos de un aplicación así como recuperarlos y guardarlos en la

base de datos, entre las cuales se encuentran las clases de MySqlCommand que es la

encargada de recibir y ejecutar sentencias SQL de la base de datos, MySqlConnection

con la cual se establece la conexión a la base de datos ya que recibe dos objetos, uno de

tipo conexión y otro con la sentencia SQL, por último MySqlDataAdapter que se utiliza

MySqlException

MySqlError

Page 7: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 6

para interactuar con la base de datos para poder guardar y actualizar datos estos se

explicarán más delante en los siguientes temas.

3.1.2. MySqlConnection

En este capítulo se abordará la funcionalidad del uso del objeto MySqlConnection así

como la instalación necesaria del driver que proporciona gratuitamente MySQL para su

descarga e instalación y que será utilizado junto con los objetos MysqlDataAdapter y

MysqlCommand los cuáles revisarás en el tema 3.2 Manipulación de los datos.

La clase MySqlConnection hace una conexión única con la base de datos de MySQL que

se utiliza comúnmente en combinación con MySqlCommand, MySqlDataReader,

MySqlDataAdapter (estos se explicaran más adelante en el subtema 3.2.1.

MysqlDataAdapter y 3.2.2 MySqlCommandt) o algún otro componente utilizado para la

interoperabilidad de MySQL. Un objeto MySqlConnection representa un origen de datos

de la base de datos de MySQL (Bell, 2012).

MySqlCommand: Esta clase tiene la finalidad de ejecutar comandos SQL en la base de

datos de MySQL.

MySqlDataAdapter: Permite recuperar, guardar o actualizar datos de a base de datos.

MySqlDataReader: Funciona igual que MySqlDataAdapter pero a diferencia de este es

utilizado cuando se desea solo leer datos de la base de datos por ejemplo cuando se

hace uso de un comando SQL como SELECT.

A continuación se explicarán los pasos necesarios para instalar y configurar el controlador

de MySql-Connector:

Page 8: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 7

1. En primer lugar es necesario descargar el driver en el sitio oficial de MySQL (2013a).

Página principal de descarga de MySQL-connector (MySQL, 2013a)

2. Instalar el controlador de MySQL Connector.

Cuadro de diálogo de instalación de MySQL-Connector (MySQL, 2013a)

Si no quieres

suscribirte a otros

recursos puedes dar

clic en esta opción y

descargar los drivers

de MySQL

Dar clic para

comenzar la

descarga

Page 9: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 8

3. Se selecciona la opción siguiente (Next) y se esperan unos minutos mientras termina

el proceso de instalación.

4. Después de que se termina con el proceso de instalación del MySQL Connector, se

crea un nuevo proyecto en Visual Basic.

Pantalla de creación de nuevo proyecto

5. Una vez creado el proyecto, deberás agregar las referencias de las clases que acabas

de instalar, esto lo harás en el entorno de desarrollo Visual Studio 2010. Para realizar esto

en el entorno de desarrollo, en la barra de menú deberás dar clic en la opción Project y

seleccionarás la opción Add reference, tal como lo muestra la imagen siguiente.

Pantalla selección de agregar referencia

Page 10: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 9

5. Una vez que selecciones las opciones antes descritas, te mostrará una nueva ventana,

ahí tendrás que seleccionar la pestaña que dice NET y dentro de ella deberás buscar la

opción que dice MySql.Data tal y como lo muestra la siguiente imagen.

Pantalla agregar referencia

6. Una vez que se agregó la referencia, se importan al código de VB .NET de la siguiente

manera:

Importación al código de la clase MySql.Data.MySqlClient

Se importa la clase

MySql.Data.MySqlClient

Page 11: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 10

Las propiedades más utilizadas de MySqlConnection son las siguientes (MySQL,

2013b):

ConnectionString: integra la cadena de tipo String que son los parámetros que se

necesitan para conectarse a una base de datos utilizada para conectar una base de

datos de MySQL. Por ejemplo:

DataBase: Recupera el nombre de la base de datos que se está utilizando

actualmente o la que se use cuando la conexión este abierta. Ejemplo:

DataSource: Recupera el nombre del servidor de la base de datos de MySQL al que

se va a conectar. Ejemplo:

Una de las herramientas importantes que proporciona Visual Basic en su barra de

herramientas es el DataGridView la cual permite tener una interfaz visual de los datos

que se encuentra en una tabla de una base de datos. Permite visualizar y editar datos de

la base de datos de una forma más fácil.

Cadena que utiliza

ConnectionString

Puede utilizarse el nombre de

DataSource o Source que en

este ejemplo se utiliza “Source”

Page 12: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 11

Para poder utilizar un DataGridView es necesario dirigirse a la barra de herramientas de

Visual Basic y después a la opción data como se muestra en la siguiente imagen.

Pantalla agregar un DataGridView

Finalmente para poder mostrar los datos de una tabla que se encuentra en una base de

datos de MySQL, se muestra un ejemplo para poder visualizar los datos:

En el siguiente ejemplo se expone un formulario con dos botones uno para salir y uno

para mostrar los datos en un DataGridView:

Formulario con un DataGridView

El DataGridView se encuentra en la

barra de herramientas, para poder

agregarlos solamente hay que

arrastrar el componente al formulario

que se quiera utilizar

Botón Para mostrar daos

DataGridView

Page 13: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 12

Primeramente se debe crear la conexión a la base de datos:

A continuación se genera el código para que funcione el botón que realizará la acción de

mostrar los datos en el cual se tiene el siguiente código:

En el ejemplo anterior se creó un objeto dentro del evento del botón el cual tiene la

finalidad de mandar a llamar el método cuando se le dé clic al botón y de esta manera

sea posible mostrar los datos en el DataGridView.

Para poder mostrar los datos se debe dar funcionalidad al método en ese caso se le

manda la consulta de los datos que se necesitan para que se muestren los datos de la

tabla quedando el código de la siguiente manera:

Programación del método mostrarDatos.

Se importan las librerías necesarias para el

funcionamiento de la aplicación

Se agregan los parámetros necesarios para

la conexión a la base de datos

Método para mostrar los

datos

Nombre del Botón

Se crea la consulta SQL y para mostrar los datos en este caso la tabl a se llama

empleados

Se le mandan los objetos a MyDqlDataAdapter de la consulta y la

conexión.

El nombre que se le asignó al

DataGridView

Page 14: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 13

Así también los métodos más usados para abrir y cerrar la conexión son los siguientes

(MySQL, 2013d):

Open: Abre una nueva conexión de la base de Datos.

Close: Cierra la conexión de la base de datos.

A continuación se muestra un ejemplo de un código utilizado para conectarse a una base

de datos de un servidor MySQL utilizando los métodos Open y Close:

Uso de MySQLConnectionString con los métodos Close y Open. (Línea de código Lenguajes de

programación, 2011).

En conclusión el objeto MySqlConnection es una parte muy importante para poder abrir

y establecer una conexión con la base de datos junto con sus propiedades, por medio de

MySqlConnection String se configuran el nombre del servidor y de la base de datos entre

otros parámetros como se muestra en el ejemplo anterior. En el tema 3.3.1. Lectura de

información mediante VB .NET se mostrará un ejemplo claro de estas clases y métodos

mediante una aplicación de Visual Basic.

Page 15: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 14

Actividad 1. Mysql.Data.SqlClient

El propósito de esta actividad es que identifiques ejemplos de implementación de cinco

clases de la colección Mysql.Data.SqlClient. Para ello, resolverás un planteamiento que

te hará llegar tu Facilitador (a). Una vez que cuentes con el planteamiento realiza estos

pasos:

1. Analiza los parámetros necesarios para poder realizar una aplicación que

muestre los datos de una tabla de una base de datos en MySQL.

2. Realiza los métodos necesarios para poder hacer una conexión a una base de

datos y mostrar una tabla con sus datos con el uso de un botón y un

DataGridView.

3. Crea un formulario con un botón y un DataGridView para poder mostrar los

datos de una tabla que se encuentre en una base de datos de MySQL.

4. Guarda la actividad con el nombre DPRN3_U3_A1_XXYZ. Sustituye las XX por

las dos primeras letras de tu primer nombre, la Y por tu primer apellido y la Z por

tu segundo apellido y envía el archivo a tu Facilitador(a) para recibir

retroalimentación mediante la herramienta Tarea.

*Consulta la rúbrica para elaborar esta actividad que encontrarás en el archivo Criterios

de evaluación de actividades U3 para conocer los parámetros de evaluación de esta

actividad.

Page 16: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 15

Actividad 2. MysqlConnection

El propósito de esta actividad es que identifiques los diferentes parámetros que pueden ser empleados en una conexión, así como su resultado. Para realizar la actividad tu Facilitador (a) te hará llegar un planteamiento, una vez que cuentes con él, realiza los siguientes pasos:

1. Analiza los parámetros de conexión a la base de datos que se encuentra en el

planteamiento del problema.

2. Realiza un método nombrándolo en VB .NET donde incluyas todo lo necesario

para llevar a cabo una conexión exitosa, de acuerdo a los datos que se encuentran en el planteamiento del problema.

3. Crea dentro del método con el nombre asignado una variable de tipo

MySqlConecction, llama al método ConnectionString y pasa los parámetros necesarios para conectarte a la base de datos.

4. Abre la conexión. No olvides realizar este código dentro de un bloque TRY

CATCH en el cual mandes un error al usuario si es que la conexión no se realizó de una manera exitosa.

5. Guarda la actividad con el nombre DPRN3_U3_A2_XXYZ. Sustituye las XX por

las dos primeras letras de tu primer nombre, la Y por tu primer apellido y la Z por tu segundo apellido y envía el archivo a tu Facilitador(a) para recibir retroalimentación mediante la herramienta Base de datos.

6. Revisa y comenta la participación de al menos dos compañeros(as) respecto a

sus conclusiones y la forma en que integrarán los estándares de usabilidad en sus proyectos, integra tus propias experiencias y conocimientos sobre usabilidad

así como la aportación de las actividades de tus compañeros a tus propios conceptos.

*Consulta la rúbrica para elaborar esta actividad que encontrarás en el archivo Criterios de evaluación de actividades U3 para conocer los parámetros de evaluación de esta actividad.

Page 17: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 16

3.2. Manipulación de datos

La manipulación de datos es uno de los aspectos más importantes que existe entre el

software y la base de datos ya que estos dos interactuarán directamente con los datos

que se soliciten o se guarden en la base de datos. Estos datos tienen que ser procesados

y validados para su uso por medio de la clase MySql.Data.SqlClient y MySqlConnection

como se mostró en los temas anteriores, después para poder interactuar con la base de

datos se hace uso de MysqlAdapter y MysqlCommand que llevarán el control de las

sentencias sql de MySQL.

En este tema se explicará la forma de uso de las clases necesarias para comunicar una

aplicación con el origen de datos para poder recuperar y guardar registros de una base de

datos que en este caso se trata de MySQL. Haciendo uso de MysqlDataAdapter y

MySqlCommand se puede establecer el puente que comunicará los registros con el origen

de base de datos estos dos temas se verán a continuación así como las clases y métodos

que conforman estos objetos.

3.2.1. MysqlDataAdapter

Este subtema es muy importante ya que MysqlDataAdapter sirve como puente entre un

conjunto de datos que se encuentran en la base de datos para poder recuperar y guardar

datos. El MySqlDataAdapter proporciona este puente haciendo uso del método Fill que

significa Agrega filas a DataSet y esto quiere decir que integra o actualiza filas para

hacerlas coincidir con las filas del origen de datos utilizando los nombres de DataSet y

DataTable, que son objetos que se utilizan para manejar datos de la base de datos

(MySQL, 2013d). Para cargar los datos desde la base de datos y Update para cambiar

los datos en el origen de datos y emparejar los datos en un DataSet.

MySqlDataAdapter es utilizado en conjunto con Devart.Data.MySqlConnection el cual lee

solamente una fila de una tabla de una base de datos y MySqlCommand para poder

aumentar el rendimiento cuando se realiza la conexión a una base de datos.

Otras funcionalidades e MySqlDataAdapter:

Llena un DataSet y a su vez crea las tablas y columnas necesarias para los datos

devueltos si aún no existen.

Utiliza propiedades de InsertCommand, SelectCommand, DeleteCommand y

TableMappings que ayudan a facilitar la carga de las actualizaciones de datos de una

base de datos.

Page 18: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 17

A continuación se muestra un ejemplo del uso de InsertCommand, SelectCommand y DeleteCommand con

MySqlDataAdapter (MySQL, 2013d):

Ejemplo del uso de InsertCommand, SelectCommand y DeleteCommand (MySQL, 2013d)

Uso de SelectCommand

Uso de Ins ertCommand

Uso de DeleteCommand

Page 19: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 18

En el ejemplo anterior se hace uso de InsertCommand, SelectCommand y

DeleteCommand para poder insertar, seleccionar y eliminar datos de la base de datos

dependiendo de las sentencias SQL que se utilicen ya sea SELECT, DELETE o INSERT.

A continuación se realiza una descripción breve de estas propiedades de

MySqlDataAdapter (Bell, 2012):

InsertCommand: Pone una sentencia de SQL o un procedimiento almacenado para

poder insertar registros de un DataSet.

SelectCommand: Establece un procedimiento almacenado a una instrucción de

Transact-SQL que selecciona registros del origen de datos.

DelecteCommand: Consigue una sentencia SQL para eliminar datos de un data set.

TableMapping: Proporciona un mapeo master entre una tabla fuente y un data table.

El método Fill refresca las filas en un DataSet del origen de datos usando el nombre del

DataSet y puede crear un DataTable.

El siguiente es un ejemplo del uso de SqlCommand, SqlDataAdapter y SqlConnection,

este código selecciona registros de una base de datos y los rellena con un DataSet:

Ejemplo del uso de SqlCommand, SqlDataAdapter y SqlConnection (Microsoft, MSDN, 2013c)

En el ejemplo anterior se obtiene los registros de una fila de una tabla que se encuentra

en la base de datos de MySQL por medio de un DataSet.

Page 20: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 19

En conclusión el MySqlDataAdapter es un puente que se utilizará para comunicar el

origen de datos y poder buscar y guardar datos de la base de datos de MySQL haciendo

uso de componentes como SqlConnection y SqlCommand este último se abordará más a

detalle en el siguiente capítulo.

Actividad 3. MysqlDataAdapter

El propósito de esta actividad es que compares las implementaciones posibles del

constructor de la clase MySqlDataAdapter. Estas implementaciones las identificarás en

un planteamiento que te hará llegar tu Facilitador (a) una vez que cuentes con él,

desarrolla los siguientes pasos:

1. Analiza los parámetros y uso de MySqlDataAdapter para poder conectarse a

una base de datos, así como DeleteCommand, InsertCommand y

SelectCommand.

2. Realiza un cuadro comparativo del uso de cada uno de los objetos

SelectCommand, InsertCommand y DeleteCommand de la clase

MySqlDataAdapter.

3. Compara la funcionalidad de los tres objetos: SelectCommand, InsertCommand

y DeleteCommand. Integra una breve descripción de cada una de ellas.

4. Guarda la actividad con el nombre DPRN3_U3_A3_XXYZ. Sustituye las XX por

las dos primeras letras de tu primer nombre, la Y por tu primer apellido y la Z por

tu segundo apellido y envía el archivo a tu Facilitador(a) para recibir

retroalimentación mediante la herramienta Tarea.

*Consulta los Criterios de evaluación de actividades U3 para conocer los parámetros de

evaluación de esta actividad.

Page 21: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 20

3.2.2. MysqlCommand

MySqlCommand es una parte fundamental para poder abrir una conexión de base de

datos ya que esta clase recibe y ejecuta las sentencias SQL y parámetros necesarios

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

En este capítulo se abordará la función principal de MySqlCommand en la base de datos

de MySQL así como los métodos utilizados para trabajar con los datos de una base de

datos de MySQL. MySqlCommand es una sentencia de SQL que se utilizará para poder

ejecutar una base de datos MySQL, los métodos que utiliza para ejecutar los comandos

en una base de datos son los siguientes (Bell, 2012).

ExecuteReader: Ejecuta comandos que devuelven Filas. Ejemplo (MSDN, 2013b).

Ejemplo de uso del método ExecuteReader (MSDN, 2013b)

ExecuteNonQuery: Ejecuta comandos como SQL, INSERT, DELETE y UPDATE.

Ejemplo: (MDSN, 2013)

Pantalla Uso de ExecuteNonQuery (MDNS, 2013d)

Se crea un objeto SqlCommand y a continuación, lo ejecuta pasando dato de tipo string que es una instrucción de Transact-SQL, y otro dato de tipo string que se utiliza para conectarse a la fuente de datos.

En este ejemplo se crea un objeto SqlCommand y, a continuación, se ejecuta mediante ExecuteNonQuery. Se pasa una cadena que es una instrucción de Transact-SQL (como UPDATE, INSERT o DELETE), y una cadena que se utiliza para conectar con el origen de datos.

Page 22: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 21

ExecuteScalar: Recupera un único valor de una base de datos. Ejemplo: Se ejecuta una

sentencia SQL donde se recupera un valor (MSDN, 2013c)

Ejemplo del uso del método ExecuteScalar (MSDN, Microsoft, 2013c)

Ejemplo del uso de MySqlCommand (MySQL, 2013c):

Pantalla implementación de MySqlCommand (MySQL, 2013c)

En el ejemplo se pasan una cadena de tipo String con la consulta SQL que representa un nuevo valor

que se va a insertar en una tabla y una cadena que se va a util izar para conectar al origen de datos.

Page 23: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 22

En el siguiente ejemplo se utiliza el método ExecuteReader de MySqlCommand el cual en

conjunto con MysqlConnection hace posible seleccionar filas de una tabla dentro de la

base de datos.

Ejemplo del uso del MySqlCommand

En el ejemplo anterior se recuperan todos los datos de la columna Departamento de la

tabla Test de una base de datos de MySQL.

MySqlCommand tiene la principal función de ejecutar comandos SQL dentro de la base

de datos:Propiedades más utilizadas con MySqlCommand (MySQL, 2013c):

Connection: Utiliza MySqlConnection usando una instancia de MySqlCommand.

CommandText: Ejecuta una sentencia SQL en el origen de datos.

CommandTimeout: Establece un tiempo de espera antes de mostrar o ejecutar una

orden de mensaje de error.

Parameters: Ejecuta el MySqlParameterCollection.

El uso del MysqlCommand es indispensable para realizar operaciones sobre la base de

datos ya que representa las sentencias SQL que se ejecutan en el servidor de MySQL

Page 24: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 23

utilizando los métodos ExecuteNonQuery y ExecuteReader que son capases de ejecutar

sentencias INSERT, DELETE y UPDATE, es decir, el uso de estas clases es necesario

para ejecutar sentencias SQL de MySQL de la base de datos de MySQL.

Actividad 4. MysqlCommand

El propósito de la actividad es identificar la sintaxis de los comandos permitidos por el

objeto MysqlCommand con base en un planteamiento que te hará llegar tu Facilitador

(a), una vez que cuentes con él, realiza estos pasos:

1. Analiza los parámetros de conexión que recibe el objeto MySqlCommand.

2. Realiza un método con el nombre Conexión en VB .NET donde incluyas todo lo

necesario para llevar a cabo una conexión exitosa, de acuerdo a los datos que

se encuentran en el planteamiento del problema.

3. Crea dentro del método Conexión una variable de tipo MySqlConecction, llama

al método ConnectionString y pasa los parámetros necesario para conectarte a

la base de datos y por último abre la conexión. No olvides realizar este código

dentro de un bloque TRY CATCH en el cual mandes un error al usuario si es que

la conexión no se realizó de una manera exitosa.

4. Guarda la actividad con el nombre DPRN3_U3_A4_XXYZ. Sustituye las XX por

las dos primeras letras de tu primer nombre, la Y por tu primer apellido y la Z por

tu segundo apellido y envía el archivo a tu Facilitador(a) para recibir

retroalimentación mediante la herramienta Tarea.

*Consulta los Criterios de evaluación de actividades U3 para conocer los parámetros de

evaluación de esta actividad.

Page 25: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 24

3.3. Implementación de la aplicación

Al implementar una aplicación de escritorio utilizando la tecnología VB .NET y MySQL, le

estarás dando solución a un problema que se presente por ejemplo en alguna

organización que desea automatizar los procesos que llevan a cabo día a día. En este

capítulo aprenderás mediante un caso práctico a darle solución a un problema

relacionado con alguna organización y así aplicarás lo aprendido a través de toda la

asignatura.

El planteamiento de un problema ejemplo es el siguiente:

Una empresa que requiere desarrollar un software para contar con un control de las

ventas diarias, pero una parte muy importante es tener un control de los usuarios que

acceden al sistema. Para darle solución a este caso en específico se implementará un

formulario en VB .NET para leer información (consultar) y modificar (actualizar) usuarios

de una base de datos a la cual se nombrará catálogos.

Esta base de datos está desarrollada en MySQL y la tabla usuario, que es

específicamente la tabla que utilizará para este formulario tiene los campos que se

muestran en la siguiente imagen:

Pantalla Tabla Usuario

La interfaz gráfica de usuario está desarrollada con VB .NET. Esta interfaz es la que se

muestra en la siguiente imagen y como te podrás percatar contiene los mismos campos

que la tabla usuario.

Page 26: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 25

Imagen del cuadro de diálogo interfaz catálogo de usuarios

Recuerda que para ocupar las clases que te permitirán tener acceso a la base de datos

MySQL desde .Net se muestran más a detalle cómo instalarlas y agregar las referencias

al entorno de desarrollo en el capítulo 3.1.1 Clase MySql.Data.SqlCliente.

En los siguientes subtemas aprenderás cómo realizar consultas, insertar registros y

modificar los de esta tabla mediante una interfaz gráfica de usuario desarrollada en Visual

Basic .NET, utilizando el entorno de desarrollo Visual Studio 2010.

3.3.1. Lectura de información mediante VB .NET

Es muy importante hacer la lectura de información de una tabla de la base de datos, por

que con esto es posible traer todos los registros o solo el que se requiera consultar de una

tabla de alguna base de datos, estas lecturas se realizan con la sentencia SQL llamada

SELECT.

Se entiende como lectura de información a la búsqueda de registros que existan dentro de

una tabla de base de datos, como se mencionó anteriormente, esta lectura de información

se realiza mediante la sentencia SQL llamada SELECT, para leer la información, esta

sentencia “selecciona un conjunto de registros en la base [de datos], o eventualmente un

valor único que es resultado de un cálculo efectuado [por una sentencia SQL SELECT]

sobre valores contenidos en la base [de datos]” (Groussard, 2011, pág. 399).

Page 27: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 26

En este subtema aprenderás a realizar una búsqueda o lectura de información contenida

en un tabla de base de datos, médiate los objetos y las clases que has aprendido a lo

largo de este curso.

Para realizar una búsqueda observará cómo trabajan juntos el objeto DataAdapter y el

objeto DataSet así como MySqlCommand. Es de suma importancia que estés

familiarizado con estos términos, claro teóricamente, ya que aquí aprenderás cómo se

llevan a la práctica realizando un formulario en VB .NET

Como se muestra en la siguiente imagen hay un componente Button que tiene por

nombre Mostrar, este botón es el que llevará a cabo la lectura de información y así se

hará posible procesar la información que se encuentra dentro de la base de datos desde

VB .NET. A continuación se muestra cómo será el código que se ejecutará al dar clic en el

botón Mostrar, este código se encuentra en la siguiente imagen.

Page 28: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 27

Pantalla código VB .NET para leer información de la base de datos

Page 29: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 28

Antes de explicar el código, recuerda que dando doble clic sobre el botón al que

quieras darle funcionalidad, en la vista de diseño se generará automáticamente el

método que ejecutará cuando el usuario pulse este botón. Una vez realizado esto se

insertará dentro del método que genere el botón el cual se desea que ejecute, para

efectos de este tema, será mostrar información o lectura de información la cual

consiste en mostrar la información de un usuario cuyos datos se encuentran dentro

de la tabla usuario.

La explicación del código que se muestra en la imagen anterior, se realizará

mediante la mención del número de líneas, estos números se encuentran en color

verde del lado izquierdo de la imagen.

En las líneas 6 a 9 se observa la creación de las variables que se van a ocupar para

realizar la lectura de información de la base de datos.

Línea 6: En esta línea se crea la variable que tendrá la consulta SQL que se va a

ejecutar.

Línea 7: Se crea la variable que realizará la conexión a la base de datos.

Línea 8: Se crea el DataAdapter el cual es el que irá a la base de datos a ejecutar la

consulta SQL para la lectura de información.

Línea 9: Se integra el DataSet el cual tendrá la información que regrese el

DataReader para poder manipular la información desde .NET.

Pantalla del código para leer información de la base de datos líneas 6 a 9

Recuerda que todo lo que se realiza después se mete en un bloque TRY CATCH ya

que si hay algún error en las líneas de código que se realicen dentro del bloque TRY,

el CATCH atrapará el error y dirá qué tipo de error se generó al ejecutar el bloque

TRY esto es manejo de excepciones (tema que ya revisaste en la asignatura

Programación .NET II), como se observa en la siguiente imagen.

Page 30: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 29

Pantalla del código para leer información de la base de datos líneas 10 al 37 bloque TRY CATCH

Page 31: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 30

Línea 12: En el objeto de conexión se llama a una propiedad llamada

ConnectionString y se le asignarán los valores de la base de datos a la cual se

desea conectar. El código se muestra en la siguiente imagen.

Pantalla del código para leer información de la base de datos línea 12 ConnectionString

Líneas 13 y 29: Se hace una validación, la cual consiste en que si el Componente

TextBox que contiene la clave de usuario no está vacío se continua con el flujo; en

caso contrario se mandará un mensaje al usuario especificándole que este campo se

encuentra vacío, como se muestra en la siguiente imagen.

Pantalla del código leer información de la base de datos líneas 13 y 29.

Línea 15: Si el flujo continúa, en la línea 15 se llena la variable sql que se creó en la

línea 6, esta variable contendrá la consulta SQL que se desea ejecutar que en este

caso se hace un select de todos los campos que contenga la tabla usuario donde el

campo id_usuario se igual al dato que selecciono el usuario en el componente

TextBox Clave usuario. Esto se muestra en la siguiente imagen.

Pantalla del código leer información de la base de datos línea 15 TextBox

Línea 16: se abre la conexión con el código que se muestra a continuación en la

imagen siguiente.

Pantalla del código leer información de la base de datos línea 16 abrir la conexión

Page 32: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 31

Línea 17: Se crea el objeto DataAdapter y se le envían dos parámetros, la variable

sql que contiene la consulta y a la que se le asignó valor en la línea 15 y la variable

de conexión la cual ya contiene la cadena de conexión que se hizo en la línea 12 y ya

se encuentra abierta para poder realizar las consultas dentro de la base de datos

Catálogo. El código se muestra a continuación en la siguiente imagen.

Pantalla del código leer información de la base de datos línea 17 creación del objeto DataAdapter

Línea 18: Se limpia el DataSet, esto se hace con el fin de que si ya se había

realizado alguna consulta anteriormente, este objeto se quede guardado en memoria

con los datos de la consulta previamente realizada, así que es muy importante limpiar

este objeto como se muestra a continuación en la imagen.

Pantalla del código leer información de la base de datos línea 18 limpia del DataSet

Línea 19: Una vez que se ejecutó el DataAdapter, el resultado de los datos que

almacena este objeto se almacenan en memoria, para poder manipular estos datos

en VB .NET se tiene que llenar el DataSet con los datos del objeto DataAdapter, al

método Fill se le darán como parámetros el DataAdapter y el nombre de tabla de la

consulta que se ejecutó, que para este caso sería a tabla usuario. Este código se

muestra en la siguiente imagen.

Pantalla del código leer información de la base de datos línea 19 llenado del DataSet.

Page 33: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 32

Líneas 20 al 29: se realiza una validación la cual consiste en contar el número de filas que contiene el DataSet, si el

resultado es mayor a 0 quiere decir que la consulta que se realizó con el DataAdapter regresó resultados, en caso

contrario se enviará un mensaje al usuario especificándole que no hay registros para mostrar. Estos pasos observan en

la siguiente imagen.

Pantalla del código leer información de la base de datos líneas 20 a 29 validación

Page 34: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 33

Líneas 22 a 26: Si el resultado anterior es mayor a 0 se procederá a llenar cada

componente TextBox con el valor que le corresponde, y así hacer visibles estos

datos al usuario en el formulario, esto se realiza llamando a la propiedad

DataBindings y dentro de este con la propiedad add, la cual recibe tres parámetros:

el primero es Text, es un parámetro fijo y constante, es decir, siempre será igual , el

segundo parámetro será el DataSet el cual contenga los datos y el tercer parámetros

será una String el cual contendrá el nombre de la tabla, un punto y enseguida en el

mismo String el nombre de la columna de la tabla que tenga el dato que se desee

poner en el TextBox correspondiente. Estos pasos se muestran en la siguiente

imagen.

Pantalla del código leer información de la base de datos líneas 22 a 26 llamando a la propiedad

DataBindings

Por último los datos se mostrarán en el formulario, como se observa en la siguiente

imagen.

Imagen de pantalla Usuario con información traída de la tabla usuario

Page 35: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 34

En conclusión en este capítulo aprendiste cómo leer información de la base de datos

mediante una consulta y abriendo la conexión desde .NET. También se explicó cómo

trabajan juntos los objetos DataAdapter y DataSet, para traer información de la base

de datos y manipular esos datos desde .NET y por último a asignar los valores de

este DataSet a lo componentes TexBox para mostrar estos resultados al usuario por

medio del formulario. En el siguiente capítulo aprenderás cómo actualizar los datos

de una base de datos MySQL que en este caso será Catálogos en su tabla

usuarios desde VB .NET.

3.3.2. Actualización de una base de datos MySQL mediante VB

.NET

Cuando se habla de actualización de una base de datos, se hace referencia al uso de

la sentencia UPDATE, “la instrucción Update [es la que permite] no solo actualizar

una columna en una fila o varias filas de una tabla en la base de datos sino que

también le permite actualizar varias filas columnas a la vez” (Hawthorne, 2002, pág.

114 ). La sentencia UPDATE permite actualizar un registro que ya existe dentro de

la base de datos, es decir un registro que se haya insertado dentro de una tabla en la

base de datos mediante la sentencia INSERT.

Continuando con el ejemplo desarrollado en el tema 3.3.1. Lectura de información

mediante VB .NET, es muy importante también ya que se realizó la lectura de

información para consultarlos tal y como se mostró en el subtema anterior, que el

usuario pueda modificar los datos, para después almacenar estos cambios en la

tabla correspondiente en la base de datos. En este subtema aprenderás a realizar

esta acción mediante un botón de acción en el formulario Catálogo de usuarios

modificando la tabla Usuario que se encuentra en la base de datos Catálogos.

Lo primero que se tiene que hacer es seleccionar un registro de la base de datos,

recuerda que para actualizar algo en la base de datos debe existir, así es que se

seleccionará un registro de la tabla existente. Una vez que se modifiquen los datos

del usuario en el Catálogo de usuarios se dará clic en el botón modificar, el cual

enviará al método que contiene el código correspondiente para realizar la

actualización de los datos en la tabla Usuarios.

El código para realizar la actualización desde .NET es el que se muestra en la

siguiente imagen.

Page 36: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 35

Código para actualizar registro de la tabla usuarios

Page 37: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 36

Ahora se explicará la forma en que funciona este código el cual abrirá la conexión

con la base de datos para posteriormente Actualizar los campos de un registro con

la sentencia SQL UPDATE y al igual que en el anterior capítulo se hará mención al

número de línea que se encuentran del lado izquierdo en color verde.

De la línea 68 a la 70 se hace la declaración de variables para posteriormente

ocuparlas.

Línea 68: Se crea la variable de tipo String llamada sql la cual contendrá la consulta

se quiere ejecutar en la base de datos.

Línea 69: Se crea el objeto conexión de tipo MySqlConnection en el cual abrirá la

conexión a la base de datos a la cual se desee conectar .

Línea 70: Se crea el objeto myCommand de tipo MySqlCommand el cual realizará la

consulta UPDATE en la base de datos. El código se muestra en la imagen siguiente.

Código actualizar registro de la tabla usuarios líneas 68 a 70

Recuerda que todo lo que se realiza después se integra en un bloque TRY CATCH

ya que si hay algún error en las líneas de código que se realicen dentro del bloque

TRY, el CATCH atrapará el error y te mencionará o hará referencia acerca de qué

tipo de error se generó al ejecutar el bloque TRY. Esto que aquí se menciona lo

aprendiste de tus asignaturas de programación anteriores en el tema manejo de

excepciones y se muestra en la imagen siguiente.

Page 38: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 37

Pantalla actualizar registro de la tabla usuarios no. 2

En la línea 72 en el objeto de conexión se llama a una propiedad llamada

“ConnectionString” y se le asignarán los valores de la base de datos a la cual se

desea conectar. El código se muestra en la siguiente pantalla llamada “Pantalla

actualizar registro de la tabla usuarios no. 3”.

Código actualizar registro de la tabla usuarios líneas 71 a 86 TRY CATCH

Línea 73: Se hace una validación la cual consiste en si el Componente TextBox que

contiene la Clave de usuario no está vacío se continua con el flujo ya que por el

id_usuario se seleccionará al usuario que se desea actualizar, en caso contrario se

mandara un mensaje al usuario especificándole que este campo se encuentra vacío

tal y como se muestra en la siguiente imagen.

Page 39: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 38

Código actualizar registro de la tabla usuarios línea 73 Validación

Líneas74 y 75: Si el campo clave usuario en el formulario no está vacío, se le

asignará un valor a la variable sql previamente creada, este valor será una sentencia

UPDATE de todos los campo del formulario, donde el campo id_usuario sea igual a

lo que tenga el campo clave de usuario en el formulario, el código se muestra a

continuación.

Código actualizar registro de la tabla usuarios líneas 74 y 75 asignación de valor a la variable sql

Línea 76: Se abre la conexión con el código que se muestra a continuación.

Código actualizar registro de la tabla usuarios línea 76 abrir la conexión con el código

Page 40: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 39

Línea 77: En la línea se llama al objeto creado myCommand y se le envían dos

parámetros, la variable sql que contiene la consulta y la variable de conexión la cual

ya contiene la cadena de conexión que se hizo en la línea 72 y ya se encuentra

abierta para poder realizar las consultas dentro de la base de datos Catálogo. El

código se muestra a continuación en la siguiente imagen.

Código actualizar registro de la tabla usuarios línea 77 llamar al objeto creado

Línea 78: Posteriormente en la línea 78 ya que el objeto tiene la conexión y la

consulta, se tiene que ejecutar manualmente para que se lleve a cabo la sentencia

UPDATE dentro de la base de datos. El código para realizar eso se muestra a

continuación.

Código actualizar registro de la tabla usuarios línea 78 llamar al objeto creado

Línea 79: Por último en la línea 79 si todo salió bien se le manda un mensaje al

usuario que los datos que ingreso en el formulario fueron actualizados

correctamente, como se muestra en la siguiente imagen.

Código actualizar registro de la tabla usuarios línea 79 ejecución del objeto

Page 41: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 40

Para el caso de insertar registros, no es necesario abarcar otro capítulo ya que es exactamente el mismo código para

actualizar un registro en la base de datos, solo cambia la consulta SQL. Para que puedas observarlo se muestra el código

a continuación.

Pantalla código para Insertar datos en la tabla usuario

Page 42: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 41

En conclusión con este tema se implementaron tres funciones básicas en un

formulario las cuales son seleccionar, actualizar e insertar registros desde un

formulario a una tabla de una base de datos que en este caso fue a la tabla usuario.

También se explicó la implementación de la clase MySqlCommand y todos los temas

referentes a conexión de base de datos mediante VB .NET, vistos en las dos

anteriores unidades.

Autoevaluación

Realiza la autoevaluación para que puedas analizar el avance que has tenido y

detectar las áreas de oportunidad respecto al estudio de la tercera unidad.

Page 43: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 42

Evidencia de aprendizaje. Manipulación de datos

El propósito de la evidencia de aprendizaje es que desarrolles un programa en

VB.NET que manipule una base de datos MySQL, retomando como base el caso

práctico realizado en la evidencia de aprendizaje de la unidad 2 Diseño de

interfaces mediante .NET. Una vez recuperado el caso, realiza los siguientes pasos:

1. Elabora el código SQL para crear la tabla dentro de la base de datos que

hayas mencionado en tu planteamiento del problema, recuerda que tu tabla

debe contener una Primary key con la cual identificarás los registros que

guardes y actualices desde el formulario que vas a crear.

2. Desarrolla el formulario (retomar de la evidencia) y los componentes

necesarios los cuales solo serán TextBox y Buttons, para interactuar con la

tabla que creaste en el paso anterior. Deberás tener en cuenta para el

desarrollo de tu formulario los estándares de usabilidad revisados en la

Unidad 2.

3. Desarrolla el código VB .NET para conectarte a la base de datos y para

cada botón de acción en tu formulario realizar las acciones:

a. Insertar

b. Actualizar y

c. Seleccionar (leer información) un registro de la tabla de la base de

datos que creaste.

No olvides realizar los mensajes que vera el usuario si es que las acciones

se realizaron de manera correcta o si hay algún error.

4. Graba un video con tu celular o cámara de video donde muestres y

expliques la conexión a datos mediante tu formulario. En el video deberá

conformarse de los siguientes pasos:

a. Insertar un registro.

b. Leer la información del registro.

c. Actualizar la información del mismo registro.

5. Guarda el script de creación de la tabla en la base de datos con el nombre

DPRN3_U3_SC_EA_XXYZ. Sustituye las XX por las dos primeras letras de

tu primer nombre, la Y por tu primer apellido y la Z por tu segundo apellido y

envía el archivo a tu Facilitador(a) para recibir retroalimentación mediante la

herramienta Tarea.

Page 44: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 43

6. Guarda el código VB .NET de tu formulario con el nombre

PRN3_U3_CVBNET_EA_XXYZ. Sustituye las XX por las dos primeras letras

de tu primer nombre, la Y por tu primer apellido y la Z por tu segundo

apellido y envía el archivo a tu Facilitador(a) para recibir retroalimentación

mediante la herramienta Tarea.

7. Guarda el video con el nombre DPRN3_U3_VID_EA_XXYZ. Sustituye las

XX por las dos primeras letras de tu primer nombre, la Y por tu primer

apellido y la Z por tu segundo apellido y envía el archivo a tu Facilitador(a)

para recibir retroalimentación mediante la herramienta Tarea.

*Consulta el documento EA. Rúbrica de evaluación de la Unidad 3 para elaborar

esta actividad y considerar los parámetros de evaluación.

Autorreflexiones

Además de enviar tu trabajo de la Evidencia de aprendizaje, ingresa al foro

Preguntas de Autorreflexión y consulta los cuestionamientos que tu Facilitador(a)

presente, a partir de ellos elabora tu Autorreflexión.

Posteriormente envía tu archivo mediante la herramienta Autorreflexiones.

Cierre de unidad

En esta unidad se abordaron los temas que tienen como finalidad que cuentes con la

posibilidad de desarrollar una aplicación utilizando las tecnologías VB. NET y

MySQL, abordando la forma como se lleva a cabo una conexión ConMySQL

mediante .NET utilizando las clases MySql.data.SqlClient y MySqlConnection.

También se expuso la forma de manipular datos desde .NET mediante el

MySqlDataAdapter el cual permite guardar los datos que hayas consultado desde

.NET en memoria para después ocuparlos y mostrarlos en un formulario, así como

realizar consultas SQL desde .NET hacia una tabla de una base de datos creada en

MySQL con la clase MySqlCommand.

Por último se expuso un ejemplo de implementación de todos los elementos que

aprendiste a través de la asignatura Programación .NET III donde se observó cómo

se le dio solución a un planteamiento de un problema mediante la lectura de

información y actualización de datos con VB .NET realizando un formulario.

Page 45: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 44

Es importante continuar con la práctica de lo aprendido en esta asignatura y

profundizar en el conocimiento de .NET pues es uno de los lenguajes más utilizados

en las consultoras que se dedican al desarrollo de software, y es necesario que

puedas dominar esta herramienta para usarla en tu vida profesional.

Para saber más

El sitio que Microsoft proporciona a los desarrolladores .NET encontrarás más

información a detalle de los componentes y del lenguaje VB .NET en la página de

Microsoft Developer Network:

http://msdn.microsoft.com/es-mx/

En el foro Stack Overflow, puedes consultar diversas dudas sobre componentes y

código de Visual Basic. El sitio está en inglés, puedes apoyarte de algunos

traductores que se encuentran en internet para traducir las respuestas que obtengas

a las dudas que compartas en este foro. Su página es la siguiente:

http://stackoverflow.com/search?q=Visual+Basic

En la página de MySQL, encontrarás todo lo referente al uso de las clases MySQL

http://www.mysql.com/

Fuentes de consulta

Bell, C., (2012). Expert MySQL. Montrial: apress.

Groussard, T., (2011). C# 4 los fundamentos del lenguaje Desarrollar con

VisualStudio 2010. Barcelona: Ediciones ENI.

Hawthorne, R., (2002). Desarrollo de base de datos en SQL Server. México:

Pearson Educacion.

Línea de código. Lenguajes de programación (2011). Net Conexión MYSQL y

C#. [En línea] http://lineadecodigo.com/dotnet/conexion-mysql-y-c-vs-2005/

MSDN Microsoft Developer Network (2013a). Sq lCommand Clas.[En línea]

http://msdn.microsoft.com/en-

us/library/system.data.sqlclient.sqlcommand%28v=vs.110%29.aspx

Page 46: Unidad 3 Manipulacion de datos mediante .NET.pdf

Programación .NET III Unidad 3. Manipulación de datos mediante .NET

Ciencias Exactas, Ingeniería y Tecnología | Desarrollo de Software 45

MSDN Microsoft Developer Network (2013b). SqlCommand.ExecuteReader

Method. [En línea] http://msdn.microsoft.com/en-

us/library/9kcbe65k(v=vs.110).aspx)

MSDN Microsoft Developer Network (2013c). SqlCommand.ExecuteScalar

Method. [En línea] http://msdn.microsoft.com/en-

us/library/system.data.sqlclient.sqlcommand.executescalar(v=vs.110).aspx).

MSDN Microsoft Developer Network (2013d). SqlDataAdapter (Clase). [En

línea] http://msdn.microsoft.com/es-

es/library/system.data.sqlclient.sqldataadapter%28v=vs.110%29.aspx

MySQL (2013a). Begin Your Download mysql-connector-net-6.7.4.msi. [En

línea]. http://dev.mysql.com/downloads/file.php?id=413555

MySQL (2013b). Class MySqlConnection Constructor (Default). [En línea]

http://dev.mysql.com/doc/refman/5.0/es/connector-net-examples-

mysqlconnection.html#connector-net-examples-mysqlconnection-defctor

MySQL (2013c). MySqlCommand. [En línea]

http://dev.mysql.com/doc/refman/5.0/es/connector-net-examples-

mysqlcommand.html):

MySQL (2013d). MySqlDataAdapter. [En línea]

http://dev.mysql.com/doc/refman/5.0/es/connector-net-examples-

mysqldataadapter.html

MySQL (2013e). MySql.Data.MySqlClient. [En línea]

http://dev.mysql.com/doc/refman/5.1/en/connector-net-ref-mysqlclient.html

MySQL (2013f). MySql.Data.MySqlClient NamespaceNamespace hierarchy.

[En línea] http://dev.mysql.com/doc/refman/5.1/en/connector-net-ref-

mysqlclient.html