Está en la página 1de 26

Acceso a datos con ADO.

NET

Descripcin

Crear Interfaz

Debug and Deploy

Escribir Cdigo

Conceptos de bases de datos Descripcin de ADO.NET Trabajar con datos

Uso de Visual Studio .NET

Acceso a datos

Depurar e implantar

Leccin: Conceptos de bases de datos


Terminologa de las bases de datos Cmo funciona la programacin de bases de datos Qu es SQL? Qu es un entorno conectado?

Qu es un entorno desconectado?

Terminologa de las bases de datos


Tabla de empleados
ID de empleado Apellido Nombre

3
Filas (registros)

Small Smith

Tony James

Relaciones
Empleados Customers

. . .

. . .
Columnas (campos)

. . .

Pedidos Products

Cmo funciona la programacin de bases de datos


Tareas habituales en la programcin de bases de datos
Conectar a una base de datos Solicitar datos especficos Mostrar y modificar datos Devolver datos Transmitir actualizaciones Cerrar la conexin
Base de datos

En muchas aplicaciones, la conexin se cierra despus de que el usuario accede a los datos y vuelve a abrirse cuando el usuario reenva actualizaciones o realiza ms peticiones

Qu es SQL?
Definicin: SQL es un lenguaje estndar de mercado que ha evolucionado hasta convertirse en el medio de mayor aceptacin para realizar consultas y modificar datos en una base de datos Sintaxis de instrucciones SQL habituales

Para especificar exactamente qu registros deseamos recuperar, utilizar SELECT Campo FROM Tabla Para limitar la seleccin de registros, utilizar SELECT * FROM Tabla WHERE Campo = "String" Para devolver registros en orden ascendente, utilizar SELECT * FROM Tabla ORDER BY Campo ASC

Ejemplo
SELECT Nombre FROM Empleados

Qu es un entorno conectado?

Un entorno conectado es aquel en que los usuarios estn conectados continuamente a una fuente de datos Ventajas:

El entorno es ms fcil de mantener

La concurrencia se controla ms fcilmente


Es ms probable que los datos estn ms actualizados que en otros escenarios Debe existir una conexin de red constante Escalabilidad limitada

Inconvenientes:

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 ms usuarios Un entorno desconectado mejora la escalabilidad y el rendimiento de las aplicaciones Los datos no siempre estn actualizados Pueden producirse conflictos de cambios que deben solucionarse

Inconvenientes:

Prctica: identificar escenarios de datos conectados o desconectados

En esta prctica,

Trabajaremos en parejas para analizar cinco escenarios de negocio en los cuales se requiere acceso a datos Para cada escenario, escogeremos un entorno conectado o desconectado, dependiendo de los requerimientos de la aplicacin Determinaremos si se requiere acceso de slo lectura o de lectura/escritura

Leccin: Descripcin de ADO.NET


Qu es ADO .NET? Objetos comunes de ADO.NET Cmo trabajar con bases de datos en el Explorador de servidores ADO.NET y XML

Qu es ADO.NET?

Objetos comunes de ADO.NET


Gestiona la conexin a una base de datos Ejecuta un comando de consulta en la base de datos

Base de datos

Connection Command

Intercambia datos entre el conjunto de datos y la base de datos Almacena datos en un cach distinto de la base de datos

DataAdapter DataSet DataReader

Proporciona acceso eficaz a un flujo de datos de slo lectura

Demostracin: Uso del Explorador de servidores

En esta demostracin, aprenderemos a utilizar el Explorador de servidores para agregar conexiones a bases de datos y visualizar elementos de bases de datos como tablas

Cmo trabajar con bases de datos en el Explorador de servidores

ADO.NET y XML

ADO.NET est estrechamente integrado con XML


Servicios Web XML

Cliente

Fuente de datos

1 4

Solicitar datos

2
DataSet
DataSet

Consulta SQL

XML

3 6

Resultados
SQL actualiza

5 XML actualizado

Ejemplo de uso de XML en una aplicacin ADO.NET desconectada

Prctica: acceso a datos en modo lectura

En esta prctica,

1. Iniciaremos una nueva aplicacin Windows Forms

2. Escogeremos el tipo de conexin y base de datos


3. Agregaremos Connection y DataAdapter al
formulario

4. Generaremos el DataSet

5. Agregaremos un control DataGrid al formulario y


estableceremos sus propiedades

6. Utilizaremos el mtodo Fill para poblar el DataSet 7. Ejecutaremos la aplicacin para visualizar datos en
modo lectura

Leccin: trabajar con datos


Cmo utilizar un objeto Connection Cmo utilizar un objeto DataAdapter Cmo utilizar un objeto DataSet Cmo utilizar un control DataGrid

Cmo utilizar el asistente Asistente para formularios de datos

Cmo utilizar un objeto Connection

Utilizamos Connection para:


Elegir el tipo de conexin Especificar la fuente de datos Abrir la conexin a la fuente de datos

Cerrar la conexin a la fuente de datos

Ejemplo de conexin a una base de datos SQL Server

Dim PubsSQLConn As SqlClient.SqlConnection PubsSQLConn = New SqlClient.SqlConnection( ) PubsSQLConn.ConnectionString = "Integrated Security=True;" & _ "Data Source=local;Initial Catalog=Pubs;" PubsSQLConn.Open( )

Cmo utilizar un objeto DataAdapter

Crear un DataAdapter Declarar con la palabra clave Dim

Pasar una cadena de consulta y un objeto Connection como parmetros

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

Mtodos principales de DataAdapter:


El mtodo Fill puebla un conjunto de datos (data set) El mtodo Update transmite los cambios al almacn de datos

Cmo utilizar un objeto DataSet

Cmo funciona un DataSet


Almacena datos en un cach desconectado Utiliza un modelo de objetos jerrquico de tablas, filas y columnas Utilizando el mtodo Fill Poblando las tablas manualmente Leyendo un documento XML o un flujo Fusionando o copiando el contenido de otro DataSet

Podemos poblar un DataSet


Cmo utilizar un control DataGrid

Utilizar un control DataGrid para mostrar datos desde una nica fuente de datos o mltiples fuentes de datos

Desde el Cuadro de herramientas, agregar un control DataGrid a un formulario Establecer las propiedades del control DataGrid

Cmo utilizar el Asistente para formularios de datos

Cmo 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 Asistente para formularios de datos

El Asistente para formularios de datos proporciona:

Un formulario Windows con controles enlazados a datos Todos los componentes de datos necesarios para el formulario Mtodos que podemos invocar para leer y escribir datos

Acceso a datos con DataReaders


Crear un DataReader Leer datos desde un DataReader Uso de DataSets frente a DataReaders

Crear un DataReader

Crear y abrir la conexin a base de datos Crear el DataReader desde un comando

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

Cerrar el DataReader y la conexin

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

Leer datos de un DataReader

Invocar Read para cada registro

Devuelve False cuando no hay ms registros


El parmetro es la posicin ordinal o nombre del campo

Obtener campos

While myReader.Read() Console.Write(myReader("CustomerID).ToString() + _ " ") Console.WriteLine(myReader("CompanyName).ToString()) End While

Invocar close para liberar el lector y la conexin

Uso de DataSets frente a DataReaders


DataSet
1. 2. 3. 4. 5. Crea una conexin de base de datos Almacena las consultas en un DataAdapter Puebla el DataSet con el mtodo Fill Crea un DataView Enlaza el DataView a un control enlazado a una lista 6. 7.

DataReader
1. 2.
3.

Crea una conexin de base de datos Abre la conexin a la base de datos Almacena consultas en un SqlCommand Puebla el DataReader con el mtodo ExecuteReader Invoca el mtodo Read para cada registro, y el mtodo Get para cada campo Muestra datos manualmente Cierra el DataReader y la conexin

4. 5.