Академический Документы
Профессиональный Документы
Культура Документы
Programa de la asignatura:
Programacin NET III
Clave:
15143632
ndice
Presentacin de la unidad
Propsitos
Identificar los conceptos bsicos de una conexin en .NET para poder aplicar esta
tecnologa en proyectos de procesamiento y gestin de la informacin.
Identificar las operaciones que se pueden realizar a una base de datos mediante
un programa de conexin en .NET.
Competencia especfica
Se puede decir que el acceso a datos consiste en establecer una conexin entre dicho
componente de software y el medio de almacenamiento de informacin (Gmez, 2010).
Una vez que se ha realizado esta conexin es posible realizar operaciones de gestin de
informacin tales como:
Crear (altas)
Borrar (bajas)
Actualizar (cambios)
Recuperar (leer)
1.1.1. OLE DB
OLE DB (Object Linking and Embedding for Databases) es una tecnologa de acceso a
datos desarrollada por Microsoft cuyo objetivo es unificar el acceso a la informacin,
considerando que sta puede estar en diferentes recursos como bases de datos o
archivos de diferentes tipos. Esta tecnologa se caracteriza por ser capaz de separar los
datos de la aplicacin donde se encuentran contenidos, esto se basa en el fundamento de
que las aplicaciones necesitan acceso a diferentes orgenes de datos y no requieren
conocer las funcionalidades especficas de cada origen.
(MSDN, 2013 c)
Microsoft propone un modelo simple pero muy poderoso de acceso universal a los datos
UDA (Universal Data Access), a qu hace referencia este concepto? Para responder a
este cuestionamiento es necesario situarse en un ambiente organizacional, donde la
informacin es obtenida desde diferentes medios como archivos, hojas de clculo, bases
de datos e incluso del correo electrnico.
Como solucin a estos inconvenientes, Microsoft propone el acceso universal a los datos.
Este modelo comprende dos grandes caractersticas (MSDN, 2013 e):
Acceso no DBMS (Data Base Management System): Se refiere a que es posible tener
acceso a orgenes de datos que no son manejadores de bases de datos (para
recordar qu son los manejadores de bases de datos revisa las asignaturas
Diseo de bases de datos y Administracin de bases de datos). Por ejemplo: emails,
sistemas de archivos, hojas de clculo y/o aplicaciones de administracin de
proyectos.
Consumidores y proveedores
El modelo que emplea OLE DB se basa en consumidores y proveedores, donde un
consumidor es todo aquel elemento de software (programa) que realiza solicitudes de
datos y un proveedor es aquel elemento de software (programa) que responde a dichas
solicitudes entregando la informacin solicitada. Como regla general, cada llamada o
peticin realizada por los consumidores debe estar implementada en el proveedor.
De manera tcnica, es posible decir que un consumidor es todo aquel sistema, aplicacin
o programa que tiene acceso a los datos por medio de interfaces OLE DB. Es posible
definir a los proveedores como todo aquel componente de software que implementa
interfaces OLE DB para encapsular el acceso a los datos para enviarlos a los
consumidores (MSDN, 2013 a).
Objetos OLE DB
1.1.2. ADO
La tecnologa ADO (Microsoft ActiveX Data Objects) permite a las aplicaciones el acceso
a datos de un servidor de base de datos y su manipulacin a travs de un proveedor
OLE DB (MSDN, 2013 d).
Esta tecnologa puede ser empleada por ambientes Windows (Visual Basic, C++) y en
ambientes Web (ASP).
Componente Funcin
Recordset Maneja un conjunto de registros de la base de datos. Cada recordset
puede ser generado por una o varias tablas de la base de datos. Este
componente tiene la capacidad de recorrerse entre sus elementos en
todas direcciones: al siguiente o anterior registro as como al ltimo o al
primero.
Command Enva instrucciones SQL para ser ejecutados en la base de datos. Los
comandos permiten insertar nuevos registros as como editarlos o
eliminarlos. Entre las instrucciones SQL que se efectan con Command
tambin se incluyen aquellas que permiten recuperar la informacin.
Selects y sus criterios o filtros.
Connection Establece la conexin con la base de datos. En esta conexin se
intercambian los datos y las operaciones a realizar sobre la base de
datos. Emplea al proveedor OLE DB cuando se tratan de bases de
datos nativas de Windows y ODBC si se trata de otro tipo de bases de
datos.
DataProvider Se encarga de conectar directamente con el tipo de base de datos al
que pertenece. Por cada tipo de base de datos se debe implementar el
DataProvider especfico de dicho tipo. En otras palabras, cada
manejador cuenta con su propio DataProvider.
Principales componentes ADO. Basado en MSDN, 2013 d
ADO .NET es una tecnologa para el acceso y gestin de datos desarrollada por Microsoft
(si necesitas recordar lo que es la gestin de datos, revisa la asignatura Administracin de
bases de datos). Est conformada por un conjunto de clases que ofrecen servicios de
acceso a datos y componentes para la creacin de aplicaciones de uso compartido. Las
fuentes de datos de esta tecnologa comprenden:
Bases de datos relacionales
XML
Aplicaciones
Esta tecnologa permite que cualquier aplicacin que consuma datos pueda conectarse
al origen de datos que requiera, recuperarlos, gestionarlos y actualizarlos
adecuadamente. El modelo de ADO .NET separa el acceso de los datos de su
manipulacin, de tal manera que los datos pueden procesarse directamente en su fuente
o manipularse en la memoria mediante un DataSet (se explicar ms adelante las
caractersticas de un DataSet).
Esta tecnologa ADO.NET es el modelo que utiliza .NET para el acceso a orgenes de
datos como SQL Server y XML de forma nativa y a otros orgenes a travs de OLE DB y
ODBC.
Los principales componentes de ADO .NET son los proveedores de datos .NET
Framework y DataSet. Sus caractersticas son las siguientes:
2. Sincronizar el origen de datos con las modificaciones realizadas sobre los datos.
Flujo de datos
Flujo de datos
Flujo de datos
Proveedores de datos .NET Framework. Sirven para realizar las tareas principales del
procesamiento de datos:
a) Conectarse a una base de datos.
b) Ejecutar comandos.
c) Recuperar informacin.
Proveedor de
datos.NET Espacio de nombres Descripcin
Framework
Proporciona acceso a datos para
SQL Server System.Data.SqlClient Microsoft SQL Server.
En este tema conocers a detalle la tecnologa propuesta por Microsoft para la obtencin
y gestin de informacin (ADO .NET). La importancia de aprender esta tecnologa radica
principalmente en que es muy comn encontrarse con la necesidad de obtener y trabajar
con datos que se encuentran en diferentes fuentes, como archivos o bases de datos;
mediante ADO.NET es posible desarrollar aplicaciones que trabajen con diferentes
orgenes de datos.
Los objetos que conforman ADO. NET se explicarn en los siguientes subtemas.
1.2.1. DataReaders
Como se mencion en los temas 1.2.1 DataSets y 1.2.2 DataAdapters, los DataSets
comprenden una representacin offline de los datos y en este tema se abordarn los
DataReaders que son una alternativa ms eficiente cuando no se requiere trabajar con
grandes volmenes de informacin o recurrencia de usuarios (Gmez, 2010).
En el supuesto caso de que un sistema requiera leer una gran cantidad de registros y que
esta peticin se realice por muchos usuarios de manera recurrente, si se carga esta
informacin en DataSets, se estar sobresaturando la memoria con muchos datos. Ante
este tipo de situaciones es ms eficiente emplear un objeto DataReader pues est
diseado para generar un flujo de slo lectura y slo hacia delante, de tal manera que
nicamente almacena un registro en memoria cada vez en el servidor.
datos, la puede recorrer hacia atrs y hacia adelante, mientras que un DataReader
nicamente lee y recorre los datos hacia adelante, registro por registro, consumiendo
menos recursos del servidor.
Try
objConn.Open
Dim dr as SqlDataReader
dr = cmdTbProveedores.ExecuteReader()
Do While dr.Read()
TextCta.Text = dr.Items(NumCta)
TextNombre.Text = dr.Items(Nombre)
TextPaterno.Text = dr.Items(APaterno)
Loop
5. Se cierra el DataReader:
dr.Close()
6. Se cierra la conexin:
objConn.Close()
Catch (e as Exception)
MsgBox(e.message)
End Try
1.2.2. DataAdapters
Para comprender mejor este proceso se explicar a continuacin paso por paso:
1. El DataAdapter establece una conexin con el origen de los datos. En este paso
tambin se crean y llenan las DataTables.
3. Se hace un llamado al mtodo GetChanges para crear un segundo DataSet con los
datos modificados.
5. Se hace un llamado al mtodo Merge para sincronizar los datos del segundo
DataSet con los del original.
6. Se hace un llamado al mtodo AcceptChanges del DataSet para aceptar los cambios
o rechazarlos con RejectChanges.
Se puede decir que trabajando de manera conjunta, los DataSets y los DataAdapters se
lleva a cabo el proceso de recuperacin y modificacin de datos con ADO .NET.
1.2.3. DataSets
DataSet es un objeto esencial para trabajar con datos desconectados (offline) mediante
ADO .NET (Gmez, 2010). Es posible imaginar al objeto DataSet como una
representacin virtual almacenada en la memoria que proporciona un modelo de
programacin relacional independiente del origen de datos. Recuerda que es posible
utilizar muchos y distintos orgenes de datos como bases de datos, archivos XML, etc.
Esta representacin comprende tablas relacionadas, constraints y las relaciones
existentes entre las tablas.
Cada DataTable representa a una nica tabla de datos residentes en memoria y contiene
a su vez los siguientes elementos:
4. Se carga el DataSet (dst) con los datos consumidos por el DataAdapter (da):
da.Fill(dst)
En este tema se expuso la forma en la que es posible trabajar con conexiones a orgenes
de datos de manera offline, para despus sincronizar y actualizar uno o varios orgenes
de datos. Se puede decir a manera de conclusin que los DataAdapters son el
complemento de los DataSets, pues el uno depende directamente del otro para efectuar
su labor.
En este tema se desarrollaron varios conceptos bsicos del acceso a datos en .NET, pues
gracias a los DataSets y los diferentes objetos que lo conforman es posible recuperar
informacin de un cierto origen de datos y presentarla para su gestin.
Es importante mencionar tambin que ADO .NET es 100% compatible con XML, por esta
razn es posible llenar un DataSet a travs de XML. La informacin que se cargue con
XML al DataSet ser capaz de combinarse con otros datos ya cargados en el mismo.
En este proyecto vas a cubrir los requerimientos de una organizacin que incluye
procesos que ayudars a mejorar con tu aplicacin y que son la base de todo sistema de
informacin: altas, bajas, cambios y consulta de informacin, de tal manera que este
desarrollo te servir de mucho en tu carrera profesional pues este tipo de procesos son
muy comunes en el desarrollo de software.
Como se mencion anteriormente, para realizar una conexin, el primer paso es crear la
base de datos para poder lograr la conexin desde .NET. En este captulo se ilustrar con
un ejemplo la forma en que se analizan y exponen los requerimientos de conexin
mediante .NET.
1. Dar de alta a sus proveedores almacenando la siguiente informacin por cada uno:
Nombre de la empresa
Razn social
RFC
Nombre completo del contacto o ejecutivo
Correo electrnico
Pgina web
Telfono
Direccin (calle, nmero, colonia, delegacin o municipio, estado, pas)
Servicios (muebles, electrnica, lnea blanca, ropa mujer, ropa hombre, deportes)
4. Finalmente es necesario que la aplicacin cuente con los mecanismos necesarios para
poder eliminar de la base de datos a algn proveedor.
En este tema se han expuesto los puntos principales del requerimiento de los Almacenes
Cozumel, mismos que vas a desarrollar a lo largo del curso hasta crear una aplicacin
que los pueda cubrir al 100%.
El primer paso consiste en analizar los requerimientos antes expuestos y disear una
propuesta de solucin a los mismos que incluya una base de datos relacional.
En una base de datos no puede haber tablas individuales, todas ellas deben tener
relacin; para llevar a cabo esta relacin debes tener en cuenta lo que es una llave
primaria (primary key, sus siglas son PK) y una llave fornea (foreign key, sus siglas son
FK), estos trminos los viste en tus materias de base de datos.
Cada tabla tendr su propia llave primaria, en el caso de Pas ser Clave_pais y para
Estado ser Clave_estado. Para llevar a cabo la relacin entre estas dos tablas debes
tener en cuenta que un estado pertenece a un pas, por lo tanto, Pas le hereda su llave
primaria a la tabla Estado, cuando se hace esto la llave primaria o PK que se hereda se
asigna como campo a la otra tabla, se respeta el mismo nombre que sera Clave_pais y
pasa a ser su llave fornea o FK, con esto estars haciendo una relacin entre dos tablas
y visualmente se vera como en la siguiente figura:
Siguiendo el subtema 1.3.1. Anlisis del caso de estudio, para el caso de proveedores se
requiere contar con la siguiente informacin:
Nombre de la empresa
Razn social
RFC
Nombre completo del contacto o ejecutivo
Correo electrnico
Pgina web
Telfono
Direccin (calle, nmero, colonia, delegacin o municipio, estado, pas)
Servicios (muebles, electrnica, lnea blanca, ropa mujer, ropa hombre, deportes)
Para ello se deber realizar una tabla llamada proveedores y la informacin solicitada en
los requerimientos pasar a ser un campo de la tabla proveedores la cual quedara de la
siguiente manera:
PROVEEDORES
Clave_proveedor PK
razon_social
rfc
nombre_contacto
correo_electronico
pagina_web
telefono
direccion
servicios
En cdigo de MySQL, que es el motor de base de datos que ocupars para crear la base
de datos y hacer la conexin con .NET, sera el siguiente:
En conclusin, con esta tabla podrs realizar ya los requerimientos que se te soliciten en
un caso. Debes tomar en cuenta que muchos trminos que se vieron en este subtema los
viste en tus materias de Administracin y diseo de bases de datos, en este apartado se
expone el ejemplo para que observes la forma de crear tu base de datos y tus tablas y
con ello puedas realizar la conexin con .NET.
Autoevaluacin
Realiza la autoevaluacin con el fin de que puedas analizar el avance que has tenido y
detectar las reas de oportunidad respecto al estudio de la primera unidad.
Autorreflexiones
Cierre de la unidad
En esta unidad se expusieron las bases necesarias para poder avanzar en las siguientes
unidades hacia el desarrollo de un proyecto, debido a que con los temas vistos ya podrs
vincular tus aplicaciones desarrolladas con .NET y una base de datos. Recuerda que la
mejor manera de aprender y comprender estos temas es practicar.
Vuelve a repasar la informacin de esta unidad 1 Conexin con bases de datos y practica
la programacin de archivos de conexin, esto te ayudar a comprender mejor la
importancia de esta primera unidad y te facilitar la aplicacin de estos conocimientos
para mejorar tus habilidades en el desarrollo de software y en la utilizacin de estos
recursos de conexin mediante .NET.
Para saber ms
Es muy recomendable que consultes este centro de recursos debido a que es publicado
por la misma compaa que desarrollo la tecnologa .NET y aqu podrs encontrar lo
ltimo en informacin relacionada a Visual Basic .NET.
Al igual que Microsoft, el sitio de MYSQL Dev. ofrece tambin el sitio web Developer
Zone, donde encontrars los mejores recursos e informacin sobre este manejador.
https://dev.mysql.com/
Fuentes de consulta
Durn, L. (2007). Bases de Datos con Visual Basic. Espaa: Marcombo, Ediciones
Tcnicas.
MSDN, Microsoft Developer Network (2013 b). Datasets de ADO.NET. [En lnea]
http://msdn.microsoft.com/es-es/library/zb0sdh0b.aspx
MSDN, Microsoft Developer Network (2013 c). Microsoft OLE DB. [En lnea]
http://msdn.microsoft.com/en-
us/library/windows/desktop/ms722784%28v=vs.85%29.aspx
Ramrez, J. F., (2005). Aprenda Practicando Visual Basic 2005 usando Visual
Studio 2005. Mxico: Pearson Educacin.