unidad 3 nombre del curso: ado.net instructor: li ramiro robles villanueva

47
UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Upload: roldan-galindo

Post on 13-Feb-2015

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

UNIDAD 3

NOMBRE DEL CURSO:

ADO.NET

INSTRUCTOR: LI Ramiro Robles Villanueva

Page 2: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Acceso a datos con ADO.NET

Page 3: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Descripción 5.1 Introducción a ADO.NET

5.2 .NET DATA PROVIDERS

5.3 Conexiones a orígenes de Datos.

5.4 El objeto Dataset.

5.5 Integración con XML.

5.6 Construyendo Datasets con Orígenes de datos existentes.

5.7 Construyendo y consumiendo un webservice que utiliza ADO.NET.

5.8 Desarrollo de aplicaciones con ADO.NET.

Debugand Deploy

Escribir Código

Acceso a datos

Uso de Visual Studio .NET

Depurare implantar

CrearInterfaz

Page 4: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Lección: Conceptos de bases de datos

Terminología de las bases de datos

Cómo funciona la programación de bases de datos

¿Qué es SQL?

¿Qué es un entorno conectado?

¿Qué es un entorno desconectado?

Page 5: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

ID de empleadoID de empleadoID de empleadoID de empleado

33

ApellidoApellidoApellidoApellido

SmallSmall

NombreNombreNombreNombre

TonyTony

55 SmithSmith JamesJames

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Terminología de las bases de datos

Products

Customers

Pedidos

Empleados

Relaciones

Tabla de empleados

Filas(registros)

Columnas (campos)

Page 6: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo funciona la programación de bases de datos

Conectar a una base de datos

Solicitar datos específicos

Devolver datos

Transmitir actualizacionesMostrar y modificar

datos

Base de datos

Cerrar la conexión

En muchas aplicaciones, la conexión se cierra después de que el usuario accede a los datos y vuelve a abrirse cuando el usuario reenvía actualizaciones o realiza más peticiones

En muchas aplicaciones, la conexión se cierra después de que el usuario accede a los datos y vuelve a abrirse cuando el usuario reenvía actualizaciones o realiza más peticiones

Tareas habituales en la programáción de bases de datos

Page 7: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

¿Qué es SQL?

Sintaxis de instrucciones SQL habituales Para especificar exactamente qué registros deseamos

recuperar, utilizarSELECT Campo FROM Tabla

Para limitar la selección de registros, utilizarSELECT * FROM Tabla WHERE Campo = "String"

Para devolver registros en orden ascendente, utilizarSELECT * FROM Tabla ORDER BY Campo ASC

Ejemplo

Definición: SQL es un lenguaje estándar de mercado que ha evolucionado hasta convertirse en el medio de mayor aceptación para realizar consultas y modificar datos en una base de datos

Definición: SQL es un lenguaje estándar de mercado que ha evolucionado hasta convertirse en el medio de mayor aceptación para realizar consultas y modificar datos en una base de datos

SELECT Nombre FROM EmpleadosSELECT Nombre FROM Empleados

Page 8: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

¿Qué es un entorno conectado?

Un entorno conectado es aquel en que los usuarios están conectados continuamente a una fuente de datos

Ventajas:

El entorno es más fácil de mantener

La concurrencia se controla más fácilmente

Es más probable que los datos estén más actualizados que en otros escenarios

Inconvenientes:

Debe existir una conexión de red constante

Escalabilidad limitada

Page 9: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Ejemplo de entorno conectado

Page 10: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

¿Qué es un entorno desconectado?

Un entorno desconectado es aquel en el que los datos pueden modificarse de forma independiente y los cambios se escriben posteriormente en la base de datos

Ventajas:

Las conexiones se utilizan durante el menor tiempo posible, permitiendo que menos conexiones den servicio a más usuarios

Un entorno desconectado mejora la escalabilidad y el rendimiento de las aplicaciones

Inconvenientes:

Los datos no siempre están actualizadosPueden producirse conflictos de cambios que deben solucionarse

Page 11: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Ejemplos de ambientes desconectados

Page 12: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Lección:5.1 Introducción a ADO.NET

¿Qué es ADO .NET?

Objetos comunes de ADO.NET

Cómo trabajar con bases de datos en el Explorador de servidores

ADO.NET y XML

Page 13: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

¿Qué es ADO.NET?

Page 14: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 15: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

5.2 Net DATA PROVIDERS

Page 16: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 17: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 18: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 19: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 20: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Base de datos

5.3 Conexiones a Orígenes de Datos

ConnectionConnection

CommandCommand

DataSetDataSet DataReaderDataReader

DataAdapterDataAdapter

Gestiona la conexión a una base de datos

Gestiona la conexión a una base de datos

Ejecuta un comando de consultaen la base de datos

Ejecuta un comando de consultaen la base de datos

Almacena datos en un caché distinto de la base de datos

Almacena datos en un caché distinto de la base de datos

Proporciona acceso eficaz a unflujo de datos de sólo lectura

Proporciona acceso eficaz a unflujo de datos de sólo lectura

Intercambia datos entre el conjunto de datos y la base de datos

Intercambia datos entre el conjunto de datos y la base de datos

Page 21: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 22: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

5.4 Objeto DATASET

Page 23: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 24: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

5.5 ADO.NET y XML

ADO.NET está estrechamente integrado con XML

Ejemplo de uso de XML en una aplicación ADO.NET desconectada

Servicios Web XML

DataSetDataSet

Solicitar datos1111

Consulta SQL2222

Resultados3333XML4444

XML actualizado5555SQL actualiza

6666

Fuente de datosCliente

DataSetDataSet

Page 25: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo trabajar con bases de datos en el Explorador de servidores

Page 26: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Qué es XML

Page 27: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 28: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

5.6 Construyendo Datasets con Orígenes de datos existentes.

Cómo utilizar un objeto Connection

Cómo utilizar un objeto DataAdapter

Cómo utilizar un objeto DataSet

Cómo utilizar un control DataGrid

Cómo utilizar el asistente Asistente para formularios de datos

Page 29: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo utilizar un objeto Connection

Utilizamos Connection para:

Elegir el tipo de conexión

Especificar la fuente de datos

Abrir la conexión a la fuente de datos

Cerrar la conexión a la fuente de datos

Ejemplo de conexión a una base de datos SQL Server

Dim PubsSQLConn As SqlClient.SqlConnectionPubsSQLConn = New SqlClient.SqlConnection( )PubsSQLConn.ConnectionString = "Integrated Security=True;" & _

"Data Source=local;Initial Catalog=Pubs;"PubsSQLConn.Open( )

Dim PubsSQLConn As SqlClient.SqlConnectionPubsSQLConn = New SqlClient.SqlConnection( )PubsSQLConn.ConnectionString = "Integrated Security=True;" & _

"Data Source=local;Initial Catalog=Pubs;"PubsSQLConn.Open( )

Page 30: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Ejemplo de conexión a una base de datos de acces

Dim conn As String = _

"Provider=Microsoft.jet.oledb.4.0;data source=D:\EJEMPLO SEMANA ACADEMICA\AGENDA.mdb;"

Page 31: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 32: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 33: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo utilizar un objeto DataAdapter

Crear un DataAdapter Declarar con la palabra clave Dim

Pasar una cadena de consulta y un objeto Connection como parámetros

Métodos principales de DataAdapter:

El método Fill puebla un conjunto de datos (data set)

El método Update transmite los cambios al almacén de datos

Dim PubsAdapter As SQLDataAdapter = New SQLDataAdapter _ ("Select * from Titles", PubsSQLConn)

Dim PubsAdapter As SQLDataAdapter = New SQLDataAdapter _ ("Select * from Titles", PubsSQLConn)

Page 34: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo utilizar un objeto DataAdapter

Dim productadapter As New OleDbDataAdapter("SELECT Nombre, Telefono, Email, cumple", amigosConnection)

Page 35: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 36: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo utilizar un objeto DataSet

Cómo funciona un DataSet

Almacena datos en un caché desconectado Utiliza un modelo de objetos jerárquico de tablas, filas y

columnas Podemos poblar un DataSet

Utilizando el método Fill

Poblando las tablas manualmente Leyendo un documento XML o un flujo Fusionando o copiando el contenido de otro DataSet

Page 37: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo utilizar un control DataGrid

Utilizar un control DataGrid para mostrar datos desde una única fuente de datos o múltiples fuentes de datos

Desde el Cuadro de herramientas, agregar un control DataGrid a un formulario

Establecer las propiedades del control DataGrid

Page 38: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Cómo utilizar el Asistente para formularios de datos

Cómo abrir el Asistente para formularios de datos

En el menú Archivo, hacer clic en Agregar nuevo elemento

En el panel Plantillas, seleccionar Asistente para formularios de datos

Seguir las instrucciones del asistente El Asistente para formularios de datos

proporciona: Un formulario Windows con controles enlazados a

datos Todos los componentes de datos necesarios para el

formulario Métodos que podemos invocar para leer y escribir

datos

~~~ ~~~ ~~~

Asistente paraformularios de datos

Asistente paraformularios de datos

Page 39: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Acceso a datos con DataReaders

Crear un DataReader

Leer datos desde un DataReader

Uso de DataSets frente a DataReaders

Page 40: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 41: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva
Page 42: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Crear un DataReader

Crear y abrir la conexión a base de datos

Crear el DataReader desde un comando

Cerrar el DataReader y la conexión

Dim mySqlCommand As New SqlCommand( "select * from customers", mySqlConnection)Dim myReader As SqlDataReader = mySqlCommand.ExecuteReader()

Dim mySqlCommand As New SqlCommand( "select * from customers", mySqlConnection)Dim myReader As SqlDataReader = mySqlCommand.ExecuteReader()

If Not (myReader Is Nothing) Then myReader.Close()End IfIf mySqlConnection.State = ConnectionState.Open Then mySqlConnection.Close()End If

If Not (myReader Is Nothing) Then myReader.Close()End IfIf mySqlConnection.State = ConnectionState.Open Then mySqlConnection.Close()End If

Page 43: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Leer datos de un DataReader

Invocar Read para cada registro

Devuelve False cuando no hay más registros

Obtener campos

El parámetro es la posición ordinal o nombre del campo

Invocar close para liberar el lector y la conexión

While myReader.Read() Console.Write(myReader("CustomerID“).ToString() + _

" ") Console.WriteLine(myReader("CompanyName“).ToString())End While

While myReader.Read() Console.Write(myReader("CustomerID“).ToString() + _

" ") Console.WriteLine(myReader("CompanyName“).ToString())End While

Page 44: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

Uso de DataSets frente a DataReaders

DataSet

1. Crea una conexión de base de datos

2. Almacena las consultas en un DataAdapter

3. Puebla el DataSet con el método Fill

4. Crea un DataView

5. Enlaza el DataView a un control enlazado a una lista

DataReader

1. Crea una conexión de base de datos

2. Abre la conexión a la base de datos

3. Almacena consultas en un SqlCommand

4. Puebla el DataReader con elmétodo ExecuteReader

5. Invoca el método Read para cada registro, y el método Get para cada campo

6. Muestra datos manualmente

7. Cierra el DataReader y la conexión

Page 45: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

5.7 ADO.NET Y WEBSERVICES

EJEMPLOS.

Page 46: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva

5.8 APLICACIONES CON ADO.NET

Desarrollar su proyecto final utilizando ADO.NET

Page 47: UNIDAD 3 NOMBRE DEL CURSO: ADO.NET INSTRUCTOR: LI Ramiro Robles Villanueva