Está en la página 1de 24

ADO.

NET
Curso:

Temas Avanzados de Ing. De Sistemas


Docente:

Ing. Robert Snchez Ticona


Integrantes:


Ciclo:

Espinal Bazn, John Carlos. Pairazaman Esteves, Luis. Quintana Chvez, Edward Ismael. Vsquez Huamn, Oscar Ivn. Vigo Escalante, Erick Anthony.

IX

Guadalupe - 2012

Universidad Nacional de Trujillo


INDICE GENRAL
DEFINICION: ............................................................................................................................... 3 ActiveX Data Objects ...................................................................................................... 3 Evolucin ...................................................................................................................... 3 ASP.NET ..................................................................................................................... 5 Funcionamiento ........................................................................................................... 7 Componentes ADO ...................................................................................................... 8 Principales componentes de ADO .......................................................................... 8 Otros componentes de ADO ................................................................................... 8 Objetos Connection, Recordset y Command ............................................................ 8 La Conexin ............................................................................................................. 8 El Recordset ........................................................................................................... 10 El Comando ........................................................................................................... 11

.NET................................................................................................................................ 12 Componentes ............................................................................................................. 13 Common Language Runtime ................................................................................... 13 Caractersticas ....................................................................................................... 14 Biblioteca de Clases Base de .NET ........................................................................... 14

ARQUITECTURA:..................................................................................................................... 16 Data Provider ................................................................................................................ 16 Connection ................................................................................................................. 16 Command ................................................................................................................... 16 Parameter................................................................................................................... 16 DataAdapter .............................................................................................................. 16 DataReader ................................................................................................................ 16 Data Set .......................................................................................................................... 16

COMENTARIOS ........................................................................................................................ 18 SqlConection .................................................................................................................. 18 SqlDataAdapter ............................................................................................................. 20 DataSet ........................................................................................................................... 21

Temas Avanzados de Ing. De Sistemas I

Universidad Nacional de Trujillo

ADO.NET
DEFINICION:

El ADO.NET es un conjunto de componentes del software que pueden ser usados por los programadores para acceder a datos y a servicios de datos. Es una parte de la biblioteca de clases base que estn incluidas en el Microsoft .NET Framework. Es comnmente usado por los programadores para acceder y para modificar los datos almacenados en un Sistema Gestor de Bases de Datos Relacionales, aunque tambin puede ser usado para acceder a datos en fuentes no relacionales. ADO.NET es a veces considerado como una evolucin de la tecnologa ActiveX Data Objects (ADO), pero fue cambiado tan extensivamente que puede ser concebido como un producto enteramente nuevo.

ActiveX Data Objects ActiveX Data Objects (ADO) es uno de los mecanismos que usan los programas de computadoras para comunicarse con las bases de datos, darles rdenes y obtener resultados de ellas. Con ADO, un programa puede leer, insertar, editar, o borrar, la informacin contenida en diferentes reas de almacenamiento dentro de la base de datos llamadas tablas. Adems, se puede manipular la propia base de datos para crear nuevas reas para el almacenamiento de informacin (tablas), como tambin alterar o eliminar las ya existentes, entre otras cosas. Fue desarrollado por Microsoft y es usado en ambientes Windows por lenguajes de programacin como Visual Basic, C++, Delphi entre otros, como tambin en la Web mediante el uso de Active Server Pages (ASP) y el lenguaje VBScript (Visual Basic Script Edition).

Evolucin ADO substituy tanto a DAO (Data Access Object), como a RDO (Remote Data Object), que eran los sistemas previos que se usaban para acceder a las bases de datos y bases de datos remotas, respectivamente. Tiene la mayor parte de la funcionalidad de ambos modelos y sin embargo es ms sencillo de usar y de entender y por lo tanto ms fcil y menos engorroso de programar.

Temas Avanzados de Ing. De Sistemas I

Universidad Nacional de Trujillo

La ltima versin de ADO, creada por Microsoft, se llama ADO.NET, y se usa en los entornos de programacin de la plataforma .NET, de Microsoft, para manejar bases de datos tanto en Windows como en la Web mediante ASP.NET, que es la nueva versin del ASP para la plataforma.NET. En la plataforma de programacin de software libre llamada Mono tambin existe una biblioteca similar a ADO.NET, lo que significa que ahora, la tecnologa ADO.NET se puede usar en otros sistemas operativos aparte de Windows, como Linux, Mac OS X, BSD, y Solaris.

NOTA - Mono: es el nombre de un proyecto de cdigo abierto, para crear un grupo de herramientas libres, basadas en GNU/Linux y compatibles con .NET. - Cdigo abierto: es el trmino con el que se conoce al software distribuido y desarrollado libremente. El cdigo abierto tiene un punto de vista ms orientado a los beneficios prcticos de compartir el cdigo que a las cuestiones ticas y morales las cuales destacan en el llamado software libre. Active Server Pages (ASP) Tambin conocido como ASP clsico, es una tecnologa de Microsoft del tipo "lado del servidor" para pginas web generadas dinmicamente, que ha sido comercializada como un anexo a Internet Information Services (IIS). La tecnologa ASP est estrechamente relacionada con el modelo tecnolgico y de negocio de su fabricante. Intenta ser solucin para un modelo de programacin rpida ya que "programar en ASP es como programar en Visual Basic y C#", por supuesto con muchas limitaciones y algunas ventajas especficas en entornos web.

Internet Information Services o IIS: Es un servidor web y un conjunto de servicios para el sistema operativo Microsoft Windows. Originalmente era parte del Option Pack para Windows NT. Luego fue integrado en otros sistemas operativos de Microsoft destinados a ofrecer servicios, como Windows 2000 o Windows Server 2003. Windows XP Profesional incluye una versin limitada de IIS. Los servicios que ofrece son: FTP, SMTP, NNTP y HTTP/HTTPS.

Temas Avanzados de Ing. De Sistemas I

Universidad Nacional de Trujillo

Antiguamente se denominaba PWS (Personal Web Server), y actualmente forma parte de la distribucin estndar de Windows, de modo que no se necesita una licencia extra para instalarlo. Este servicio convierte a una PC en un servidor web para Internet o una intranet, es decir que en las computadoras que tienen este servicio instalado se pueden publicar pginas web tanto local como remotamente. Los servicios de Internet Information Services proporcionan las herramientas y funciones necesarias para administrar de forma sencilla un servidor web seguro. El servidor web se basa en varios mdulos que le dan capacidad para procesar distintos tipos de pginas. Por ejemplo, Microsoft incluye los de Active Server Pages (ASP) y ASP.NET. Tambin pueden ser incluidos los de otros fabricantes, como PHP o Perl. ASP.NET Es un framework (marco) para aplicaciones web desarrollado y comercializado por Microsoft. Es usado por programadores para construir sitios web dinmicos, aplicaciones web y servicios web XML. Apareci en enero de 2002 con la versin 1.0 del .NET Framework, y es la tecnologa sucesora de la tecnologa Active Server Pages (ASP). ASP.NET est construido sobre el Common Language Runtime (CLR), permitiendo a los programadores escribir cdigo ASP.NET usando cualquier lenguaje admitido por el .NET Framework. ASP.NET slo funciona sobre el servidor de Microsoft IIS, lo que supone una desventaja respecto a otros lenguajes del lado de servidor, ejecutables sobre otros servidores ms populares como Apache. Ejemplos de esto son PHP, Perl o Python. El Common Language Runtime o CLR ("entorno en tiempo de ejecucin de lenguaje comn") es un entorno de ejecucin para los cdigos de los programas que corren sobre la plataforma Microsoft .NET. El CLR es el encargado de compilar una forma de cdigo intermedio llamada Common Intermediate Language (CIL, anteriormente conocido como MSIL, por Microsoft Intermediate Language), al cdigo de maquina nativo, mediante un compilador en tiempo de ejecucin.

Temas Avanzados de Ing. De Sistemas I

Universidad Nacional de Trujillo

No debe confundirse el CLR con una mquina virtual, ya que una vez que el cdigo esta compilado, corre nativamente sin intervencin de una capa de abstraccin sobre el hardware subyacente. Es una implementacin del estndar Common Language Infrastructure (CLI). Los desarrolladores que usan CLR escriben el cdigo fuente en un lenguaje compatible con .NET, como C# o Visual Basic .NET. En tiempo de compilacin, un compilador .NET convierte el cdigo a CIL. En tiempo de ejecucin, el compilador en tiempo de ejecucin del CLR convierte el cdigo CIL en cdigo nativo para el sistema operativo. Alternativamente, el cdigo CIL es compilado a cdigo nativo en un proceso separado anterior a la ejecucin. Esto acelera las posteriores ejecuciones del software debido a que la compilacin de MSIL a nativo ya no es necesaria. A pesar de que algunas implementaciones del Common Language Infrastructure se ejecutan en sistemas operativos que no sean Windows, el CLR se ejecuta solo en Microsoft Windows.

NOTA - Se denomina tiempo de compilacin (compile-time en ingls) al intervalo de tiempo en el que un compilador compila cdigo escrito en un lenguaje de programacin a una forma de cdigo ejecutable por una mquina. El compilador normalmente realiza un chequeo de sintaxis, que incluye entre otros un chequeo de tipos y ejecucin de reglas de mbito, seguido de un anlisis semntico, que se compone de procesos como el enlazado esttico, la instanciacin de plantillas y la optimizacin del cdigo generado. - Se denomina tiempo de ejecucin (Runtime en ingls) al intervalo de tiempo en el que un programa de computadora se ejecuta en un sistema operativo. Este tiempo se inicia con la puesta en memoria principal del programa, por lo que el sistema operativo comienza a ejecutar sus instrucciones. El intervalo finaliza en el momento en que ste enva al sistema operativo la seal de terminacin, sea sta una terminacin normal, en que el programa tuvo la posibilidad de concluir sus instrucciones satisfactoriamente, o una terminacin anormal, en el que el programa produjo algn error y el sistema debi forzar su finalizacin.

Temas Avanzados de Ing. De Sistemas I

Universidad Nacional de Trujillo

Funcionamiento ADO es un intermediario entre el programa y la base de datos. El programa no ve la base de datos directamente, sino que hace todo el trabajo a travs de ADO. Usando ADO, el programa se comunica con la base de datos, consulta, edita, inserta, borra, registros, aade tablas, etc. ADO a su vez se comunica con la base de datos a travs de un "proveedor de datos". En la direccin contraria, la base de datos responde, comunicndose con el proveedor de datos, ste con ADO, y al final, la informacin llega al programa.

El programa usa ADO para hacer una solicitud a la base de datos: "Dame el nombre y apellido de todos los empleados que vivan en Chepn" Programa ---> ADO ---> Proveedor de datos ---> Base de datos

En la direccin contraria, la base de datos responde, comunicndose con el proveedor de datos, ste con ADO, y al final, la informacin llega al programa.
La base de datos responde Programa <--- ADO <--- Proveedor de datos <--- Base de datos
+--------+-----------+ | Nombre | Apellido | +--------+-----------+ | Jos | Pereira | | Juan | Prez | | Mara | Hernndez | +--------+-----------+

Una vez que el programa tiene la informacin proveniente de la base de datos, puede hacer con ella lo que considere, como por ejemplo, puede desplegarla en una pgina Web. Los usuarios solicitados son los siguientes:

Temas Avanzados de Ing. De Sistemas I

Universidad Nacional de Trujillo

Componentes ADO Principales componentes de ADO Connection (Permite establecer una conexin con la base de datos) Recordset (Maneja un conjunto de records de la base de datos) Command (Permite enviar rdenes SQL para ser ejecutados por la base de datos) Otros componentes de ADO Record (Permite manejar un registro, tpicamente pero no exclusivamente, de una fuente diferente a una base de datos. Uno de sus usos es la representacin de datos que no estn estructurados en forma de Tablas, como por ejemplo que tengan una estructura tipo rbol. Field (Permite manipular un campo perteneciente a un Record o un Recordset) Parameter (Permite configurar un parmetro para una consulta SQL. Se usa con Command) Stream (Permite manejar flujos de datos (streams), provenientes de ficheros de texto, pginas web, etc) Error (Indica las caractersticas de los errores que pudieran suceder al ejecutar mtodos de los objetos de ADO) Property (Contiene informacin perteneciente a un objeto determinado) Objetos Connection, Recordset y Command Los 3 principales componentes de ADO son Connection, Recordset y Command (la conexin, el recordset, y la orden).
+------------+ +----| Connection |------+ | +------------+ | | | +-----+-----+ +-------+---+ | Recordset |----------| Command | +-----------+ +-----------+

La Conexin La conexin es como una autopista que permite el flujo de datos entre el programa y la base de datos. Por ella pueden viajar las rdenes que desde el programa se usan para hacer solicitudes de informacin a la base de datos o para realizar una operacin dentro de ella como borrar registros, aadir registros, modificar tablas, etc. Tambin, por esta autopista, pueden ir y venir los datos, desde y hacia la base de datos, entre otras cosas.
Temas Avanzados de Ing. De Sistemas I 8

Universidad Nacional de Trujillo


Tanto el recordset como la orden usan la conexin para comunicarse con la base de datos. La conexin se comunica con la base de datos a travs de un intermediario llamado "proveedor de datos".

+----------+ +-----------+ +---------+ | Conexin | ------> | Proveedor | ------> | Base de | | | <------ | de datos | <------ | datos | +----------+ +-----------+ +---------+

Con OLE DB +---------------+ | Programa | +---------------+ | ADO | +---------------+ | OLE DB | | +--------+ | | | | | ODBC | +------+--------+ | Base de datos | +---------------+

Con ODBC +---------------+ | Programa | | | | | ADO | | | | | OLEDB | | | | | | | | | | | | | | Base de datos | +---------------+

+---------------+ | Programa | | | | | ADO | | | | | OLEDB (OLE DB especial para | | para comunicacin con | | cualquier ODBC) | ODBC | | | | | Base de datos | +---------------+

Todo esto es transparente al usuario de ADO, quien, en lneas generales, no tiene por que enterarse ni conocer estos mecanismos. ADO tiene un alto grado de abstraccin, lo que significa que, al mantener una interface sencilla, oculta los detalles complejos del manejo de la base de datos. Un programa puede saltarse completamente el ADO, y acceder a la base de datos directamente de 3 maneras diferentes, a travs de OLDB, ODBC, o por ODBC usando una capa intermedia de OLE DB. Al trabajar de esta manera, se tiene la ventaja de una mayor funcionalidad que no contiene ADO a cambio de una mayor complejidad en la programacin. Esto es necesario algunas veces, en ciertos tipos de programas y para ciertas necesidades, pero no es lo comn.

Temas Avanzados de Ing. De Sistemas I

Universidad Nacional de Trujillo

+------------------------+ | Programa | +---+-------+-------+----+ 1 2 3 +---+----+--+---+---+----+ | OLE DB | ODBC | OLE DB | | | +--------+ | | | ODBC | +--------+------+--------+ | Base de datos | +------------------------+

El Recordset El Recordset es, como su nombre lo indica, un conjunto de records. En general, sus datos tienen su origen en una base de datos, aunque tambin pueden generarse independientemente de sta. Un recordset puede contener cero o ms records (registros). Cada recordset tiene una coleccin de campos, que es comn a todos los records. Podemos verlo como una matriz o tabla, en donde las filas son los records, y las columnas son los campos.
Recordset con algunos datos de la tabla de empleados: +------------+---------+----------+ | IdEmpleado | Nombre | Apellido | +------------+---------+----------+ | 1 | Luis | Prez | +------------+---------+----------+ | 5 | Jos | Abreu | +------------+---------+----------+ | 3 | Pedro | Len | +------------+---------+----------+ | 7 | Mara | Marcano | +------------+---------+----------+ | | | | | +------| | | +-----------------| +-----------------------------

<-- Record 1 <-- Record 2 <-- Record 3 <-- Record 4 Campo "Apellido" Campo "Nombre" Campo "IdEmpleado"

Un recordset puede tener varias caractersticas que el programador define a su conveniencia. Puede ser de solo lectura, o de lectura-escritura, por ejemplo. La informacin con que se carga el recordset puede provenir de una tabla o varias tablas, de la base de datos.

Temas Avanzados de Ing. De Sistemas I

10

Universidad Nacional de Trujillo


El recordset, tiene capacidades de navegacin entre su conjunto de registros. Puede: Moverse al siguiente registro Moverse al anterior Moverse al primero Moverse al ltimo y otros En un recordset, se ve y se pueden editar los datos de un solo registro en un tiempo dado, se pueden manipular los datos de los campos del "registro actual" en donde se encuentra. Adems de editar registros, tambin se puede: Insertar registros nuevos Borrar registros La edicin, la insercin y el borrado de registros en el recordset, se reflejarn en la Base de Datos.

El Comando La orden (Command) es el componente ADO que permite hacer solicitudes o dar rdenes a la base de datos mediante una sentencia SQL. Se puede especificar la insercin de registros nuevos en una tabla, as como tambin, la eliminacin la actualizacin y la obtencin de registros con determinadas condiciones. Adems, se pueden crear, alterar y modificar las caractersticas de las tablas que conforman la base de datos. NOTA 1 Open DataBase Connectivity (ODBC) es un estndar de acceso a bases de datos desarrollado por SQL Access Group en 1992, el objetivo de ODBC es hacer posible el acceder a cualquier dato desde cualquier aplicacin, sin importar qu sistema de gestin de bases de datos (DBMS) almacene los datos, ODBC logra esto al insertar una capa intermedia (CLI) denominada nivel de Interfaz de Cliente SQL, entre la aplicacin y el DBMS, el propsito de esta capa es traducir las consultas de datos de la aplicacin en comandos que el DBMS entienda.

Temas Avanzados de Ing. De Sistemas I

11

Universidad Nacional de Trujillo


Para que esto funcione tanto la aplicacin como el DBMS deben ser compatibles con ODBC, esto es que la aplicacin debe ser capaz de producir comandos ODBC y el DBMS debe ser capaz de responder a ellos. Desde la versin 2.0 el estndar soporta SAG y SQL. NOTA 2 OLE DB (algunas veces escrito como OLEDB u OLE-DB) es la sigla de Object Linking and Embedding for Databases ("Enlace e incrustacin de objetos para bases de datos") y es una tecnologa desarrollada por Microsoft usada para tener acceso a diferentes fuentes de informacin, o bases de datos, de manera uniforme. OLE DB permite separar los datos de la aplicacin que los requiere. Esto se hizo as ya que diferentes aplicaciones requieren acceso a diferentes tipos y almacenes de datos, y no necesariamente desean conocer cmo tener acceso a cierta funcionalidad con mtodos de tecnologas especficas. OLE DB est conceptualmente dividido en consumidores y proveedores; el consumidor es la aplicacin que requiere acceso a los datos y el proveedor es el componente de software que expone una interfaz OLE DB a travs del uso del Component Object Model (COM). .NET Es un framework de Microsoft que hace un nfasis en la transparencia de redes, con independencia de plataforma de hardware y que permita un rpido desarrollo de aplicaciones. Basado en ella, la empresa intenta desarrollar una estrategia horizontal que integre todos sus productos, desde el sistema operativo hasta las herramientas de mercado. .NET podra considerarse una respuesta de Microsoft al creciente mercado de los negocios en entornos Web, como competencia a la plataforma Java de Oracle Corporation y a los diversos framework de desarrollo web basados en PHP. Su propuesta es ofrecer una manera rpida y econmica, a la vez que segura y robusta, de desarrollar aplicaciones o como la misma plataforma las denomina, soluciones permitiendo una integracin ms rpida y gil entre empresas y un acceso ms simple y universal a todo tipo de informacin desde cualquier tipo de dispositivo.

Temas Avanzados de Ing. De Sistemas I

12

Universidad Nacional de Trujillo

Componentes Los principales componentes del marco de trabajo son: - El conjunto de lenguajes de programacin. - La biblioteca de clases base o BCL. - El entorno comn de ejecucin para lenguajes, o CLR por sus siglas en ingls. Debido a la publicacin de la norma para la infraestructura comn de lenguajes (CLI por sus siglas en ingls), el desarrollo de lenguajes se facilita, por lo que el marco de trabajo .NET soporta ya ms de 20 lenguajes de programacin y es posible desarrollar cualquiera de los tipos de aplicaciones soportados en la plataforma con cualquiera de ellos, lo que elimina las diferencias que existan entre lo que era posible hacer con uno u otro lenguaje. Algunos de los lenguajes desarrollados para el marco de trabajo .NET son: C#, Visual Basic .NET, Delphi (Object Pascal), C++, F#, J#, Perl, Python, Fortran, Prolog (existen al menos dos implementaciones, el P#1 y el Prolog.NET2), Cobol y PowerBuilder. Common Language Runtime El CLR es el verdadero ncleo del framework de .NET, entorno de ejecucin en el que se cargan las aplicaciones desarrolladas en los distintos lenguajes, ampliando el conjunto de servicios del sistema operativo (W2k y W2003). Permite integrar proyectos en distintos lenguajes soportados por la plataforma .Net, como C++, Visual Basic, C#, entre otros. La herramienta de desarrollo compila el cdigo fuente de cualquiera de los lenguajes soportados por .NET en un cdigo intermedio, el CIL (Common Intermediate Language) antes conocido como MSIL (Microsoft Intermediate Language), similar al BYTECODE de Java. Para generarlo, el compilador se basa en la especificacin CLS (Common Language Specification) que determina las reglas necesarias para crear el cdigo MSIL compatible con el CLR. Para ejecutarse se necesita un segundo paso, un compilador JIT (Just-In-Time) es el que genera el cdigo mquina real que se ejecuta en la plataforma del cliente. De esta forma se consigue con .NET independencia de la plataforma de hardware. La compilacin JIT la realiza el CLR a medida que el programa invoca mtodos. El cdigo ejecutable obtenido se almacena en la memoria cach del ordenador, siendo recompilado de nuevo slo en el caso de producirse algn cambio en el cdigo fuente.

Temas Avanzados de Ing. De Sistemas I

13

Universidad Nacional de Trujillo


Caractersticas Es el encargado de proveer lo que se llama cdigo administrado, es decir, un entorno que provee servicios automticos al cdigo que se ejecuta. Los servicios son variados: Cargador de clases: permite cargar en memoria las clases. Compilador MSIL a nativo: transforma cdigo intermedio de alto nivel independiente del hardware que lo ejecuta a cdigo de mquina propio del dispositivo que lo ejecuta. Administrador de cdigo: coordina toda la operacin de los distintos subsistemas del Common Language Runtime. Recolector de basura: elimina de memoria objetos no utilizados automticamente. Motor de seguridad: administra la seguridad del cdigo que se ejecuta. Motor de depuracin: permite hacer un seguimiento de la ejecucin del cdigo an cuando se utilicen lenguajes distintos. Verificador de tipos: controla que las variables de la aplicacin usen el rea de memoria que tienen asignado. Administrador de excepciones: maneja los errores que se producen durante la ejecucin del cdigo. Soporte de multiproceso (hilos): permite desarrollar aplicaciones que ejecuten cdigo en forma paralela. Empaquetador de COM: coordina la comunicacin con los componentes COM para que puedan ser usados por el .NET Framework. Biblioteca de Clases Base que incluye soporte para muchas funcionalidades comunes en las aplicaciones.

Biblioteca de Clases Base de .NET La Biblioteca de Clases Base (BCL por sus siglas en ingls) maneja la mayora de las operaciones bsicas que se encuentran involucradas en el desarrollo de aplicaciones, incluyendo entre otras:

Interaccin con los dispositivos perifricos Manejo de datos (ADO.NET) Administracin de memoria Cifrado de datos Transmisin y recepcin de datos por distintos medios (XML, TCP/IP) Administracin de componentes Web que corren tanto en el servidor como en el cliente (ASP.NET)

Temas Avanzados de Ing. De Sistemas I

14

Universidad Nacional de Trujillo


Manejo y administracin de excepciones Manejo del sistema de ventanas Herramientas de despliegue de grficos (GDI+) Herramientas de seguridad e integracin con la seguridad del sistema operativo Manejo de tipos de datos unificado Interaccin con otras aplicaciones Manejo de cadenas de caracteres y expresiones regulares Operaciones aritmticas Manipulacin de fechas, zonas horarias y periodos de tiempo Manejo de arreglos de datos y colecciones Manipulacin de archivos de imgenes Aleatoriedad Generacin de cdigo Manejo de idiomas Auto descripcin de cdigo Interaccin con el API Win32 o Windows API. Compilacin de cdigo

Esta funcionalidad se encuentra organizada por medio de espacios de nombres jerrquicos.

La Biblioteca de Clases Base se clasifica, en cuatro grupos clave: ASP.NET y Servicios Web XML Windows Forms ADO.NET .NET

Temas Avanzados de Ing. De Sistemas I

15

Universidad Nacional de Trujillo

ARQUITECTURA:

ADO.NET consiste en dos partes primarias: Data Provider Estas clases proporcionan el acceso a una fuente de datos, como Microsoft SQL Server y Oracle. Cada fuente de datos tiene su propio conjunto de objetos del proveedor, pero cada uno tienen un conjunto comn de clases de utilidad: Connection Proporciona una conexin usada para comunicarse con la fuente de datos. Tambin acta como Abstract Factory para los objetos command. Command Usado para realizar alguna accin en la fuente de datos, como lectura, actualizacin, o borrado de datos relacionales. Parameter Describe un simple parmetro para un command. Un ejemplo comn es un parmetro para ser usado en un procedimiento almacenado. DataAdapter "Puente" utilizado para transferir data entre una fuente de datos y un objeto DataSet. DataReader Es una clase usada para procesar eficientemente una lista grande de resultados, un registro a la vez.

Data Set Los objetos DataSets, un grupo de clases que describen una simple base de datos relacional en memoria, fueron la estrella del show en el lanzamiento inicial (1.0) del Microsoft .NET Framework. Las clases forman una jerarqua de contencin: Un objeto DataSet representa un esquema (o una base de datos entera o un subconjunto de una). Puede contener las tablas y las relaciones entre esas tablas.

Temas Avanzados de Ing. De Sistemas I

16

Universidad Nacional de Trujillo


Un objeto DataTable representa una sola tabla en la base de datos. Tiene un nombre, filas, y columnas.

Un objeto DataView "se sienta sobre" un DataTable y ordena los datos (como una clusula "order by" de SQL) y, si se activa un filtro, filtra los registros (como una clusula "where" del SQL). Para facilitar estas operaciones se usa un ndice en memoria. Todas las DataTables tienen un filtro por defecto, mientras que pueden ser definidos cualquier nmero de DataViews adicionales, reduciendo la interaccin con la base de datos subyacente y mejorando as el desempeo. - Un DataColumn representa una columna de la tabla, incluyendo su nombre y tipo. - Un objeto DataRow representa una sola fila en la tabla, y permite leer y actualizar los valores en esa fila, as como la recuperacin de cualquier fila que est relacionada con ella a travs de una relacin de clave primaria - clave extranjera. - Un DataRowView representa una sola fila de un DataView, la diferencia entre un DataRow y el DataRowView es importante cuando se est interactuando sobre un resultset. Un DataRelation es una relacin entre las tablas, tales como una relacin de clave primaria - clave ajena. Esto es til para permitir la funcionalidad del DataRow de recuperar filas relacionadas. Un Constraint describe una propiedad de la base de datos que se debe cumplir, como que los valores en una columna de clave primaria deben ser nicos. A medida que los datos son modificados cualquier violacin que se presente causar excepciones. Un DataSet es llenado desde una base de datos por un DataAdapter cuyas propiedades Connection y Command que han sido iniciados. Sin embargo, un DataSet puede guardar su contenido a XML (opcionalmente con un esquema XSD), o llenarse a s mismo desde un XML, haciendo esto excepcionalmente til para los servicios web, computacin distribuida, y aplicaciones ocasionalmente conectadas.

Temas Avanzados de Ing. De Sistemas I

17

Universidad Nacional de Trujillo

COMENTARIOS SqlConection Representa una conexin abierta con una base de datos de SQL Server. Esta clase no se puede heredar.

Un objeto SqlConnection representa una nica sesin con un origen de datos de SQL Server. Con un sistema de bases de datos de cliente y servidor, equivale a una conexin de red al servidor. SqlConnection se utiliza junto con SqlDataAdapter y SqlCommand para aumentar el rendimiento de la conexin a una base de datos de Microsoft SQL Server. Con productos SQL Server de otros proveedores y otros orgenes de datos compatibles con OLE DB, se debe utilizar OleDbConnection. Cuando se crea una instancia de SqlConnection, se establecen todas las propiedades en sus valores iniciales. Para obtener una lista de esos valores, vea el constructor SqlConnection. Si la conexin SqlConnection est fuera de mbito, permanecer abierta. Por tanto, debe cerrar la conexin explcitamente mediante una llamada al mtodo Close o Dispose. Close y Dispose tienen una funcionalidad equivalente. Si el valor de agrupacin de conexiones Pooling se establece en true o yes, la conexin subyacente se devuelve al grupo de conexiones. Por otro lado, si Pooling se establece en false o no, la conexin subyacente al servidor se cerrar. Para garantizar que las conexiones se cierren siempre, abra la conexin dentro de un bloque using, como se muestra en el fragmento de cdigo siguiente. Haciendo esto se garantiza que la conexin se cierra automticamente cuando el cdigo sale del bloque.

Temas Avanzados de Ing. De Sistemas I

18

Universidad Nacional de Trujillo

EJEMPLO En el siguiente ejemplo se crean un objeto SqlCommand y un objeto SqlConnection. Se abre la conexin SqlConnection y se establece como la propiedad Connection de SqlCommand. A continuacin, en el ejemplo se llama a ExecuteNonQuery y se cierra la conexin. Para ello, se pasa a ExecuteNonQuery una cadena de conexin y una cadena de consulta que es una instruccin Transact-SQL INSERT.

Temas Avanzados de Ing. De Sistemas I

19

Universidad Nacional de Trujillo


SqlDataAdapter Representa un conjunto de comandos de datos y una conexin de base de datos que se utilizan para rellenar un DataSet y actualizar una base de datos de SQL Server. Esta clase no se puede heredar.

SqlDataAdapter, se utiliza como un puente entre DataSet y SQL Server para recuperar y guardar datos. SqlDataAdapter proporciona este puente mediante la asignacin de Fill, que cambia los datos en DataSet para que coincidan con los datos del origen de datos; y Update, que cambia los datos en el origen de datos para que coincidan con los datos en DataSet utilizando las instrucciones de Transact-SQL en el origen de datos adecuado. Cuando SqlDataAdapter rellene un objeto DataSet, crear las tablas y columnas necesarias para los datos devueltos si todava no existen. Sin embargo, la informacin de clave principal no se incluir en el esquema creado implcitamente a menos que la propiedad MissingSchemaAction se establezca en AddWithKey. Tambin se puede hacer que SqlDataAdapter cree el esquema de DataSet, incluida la informacin de clave principal, antes de rellenarlo de datos mediante el mtodo FillSchema. Para obtener ms informacin, vea Agregar restricciones existentes a DataSet. SqlDataAdapter se utiliza junto con SqlConnection y SqlCommand para aumentar el rendimiento en la conexin con una base de datos de SQL Server. SqlDataAdapter contiene tambin las propiedades SelectCommand, InsertCommand, DeleteCommand, UpdateCommand y TableMappings para facilitar la carga y la actualizacin de los datos. Cuando se crea una instancia de SqlDataAdapter, las propiedades de lectura y escritura se establecen en sus valores iniciales. Para obtener una lista de esos valores, vea el constructor SqlDataAdapter.

Temas Avanzados de Ing. De Sistemas I

20

Universidad Nacional de Trujillo


EJEMPLO En el ejemplo siguiente se utilizan SqlCommand, SqlDataAdapter y SqlConnection para seleccionar registros de una base de datos, y se rellena DataSet con las filas seleccionadas. A continuacin, se devuelve el DataSet rellenado. Para ello, al mtodo se le pasan un DataSet inicializado, una cadena de conexin y una cadena de consulta que es una instruccin SELECT de Transact-SQL.

DataSet Representa una cach de memoria interna de datos.

DataSet, que es una cach de memoria interna de datos recuperados de un origen de datos, representa un componente fundamental de la arquitectura de ADO.NET. DataSet est compuesto por una coleccin de objetos DataTable que se pueden relacionar entre ellos mediante objetos DataRelation. Tambin se puede imponer la integridad de los
Temas Avanzados de Ing. De Sistemas I 21

Universidad Nacional de Trujillo


datos de DataSet mediante los objetos UniqueConstraint y ForeignKeyConstraint. Para obtener informacin ms detallada sobre el trabajo con objetos DataSet, vea Utilizar DataSets en ADO.NET. Los objetos DataTable contienen los datos, mientras que DataRelationCollection permite desplazarse por la jerarqua de la tabla. Las tablas estn incluidas en un DataTableCollection al que se obtiene acceso a travs de la propiedad Tables. Al obtener acceso a los objetos DataTable, hay que tener en cuenta que stos distinguen entre maysculas y minsculas condicionalmente. Por ejemplo, si un objeto DataTable se denomina "mydatatable" y otro "Mydatatable", la cadena que se utilice para buscar una de las tablas se considerar que distingue entre maysculas y minsculas. Sin embargo, si existe "mydatatable" pero no existe "Mydatatable", se considerar que la cadena de bsqueda no distingue entre maysculas y minsculas. Para obtener ms informacin sobre el trabajo con los objetos DataTable, vea Crear DataTable. Un DataSet puede leer y escribir datos y esquemas como documentos XML. Los datos y esquemas pueden transportarse, a continuacin, a travs de HTTP y cualquier aplicacin puede utilizarlos en cualquier plataforma que sea compatible con XML. Los esquemas se pueden guardar como esquemas XML mediante el mtodo

WriteXmlSchema, y tanto los esquemas como los datos se pueden guardar mediante el mtodo WriteXml. Hay que utilizar el mtodo ReadXml para leer un documento XML que incluya esquema y datos. En una implementacin normal de varios niveles, los pasos de creacin y actualizacin de un DataSet y, a su vez, de actualizacin de los datos originales, son los siguientes: 1. Construir y llenar cada DataTable de un DataSet con datos desde un origen de datos mediante DataAdapter. 2. Cambiar los datos de los objetos DataTable individuales mediante la adicin, actualizacin o eliminacin de objetos DataRow. 3. Llamar al mtodo GetChanges para crear un segundo DataSet que slo incorpore los cambios realizados en los datos. 4. Llame al mtodo Update de DataAdapter, pasando el segundo DataSet como argumento.

Temas Avanzados de Ing. De Sistemas I

22

Universidad Nacional de Trujillo


5. Se invoca el mtodo Merge para combinar los cambios del segundo DataSet con el primero. 6. Invocar al mtodo AcceptChanges de DataSet. O bien, invocar al mtodo RejectChanges para cancelar los cambios. EJEMPLO El ejemplo siguiente se compone de varios mtodos que, combinados, crean y rellenan un objeto DataSet a partir de la base de datos Northwind.

Temas Avanzados de Ing. De Sistemas I

23

Universidad Nacional de Trujillo

Temas Avanzados de Ing. De Sistemas I

24

También podría gustarte