BASE DE DATOS CON ADO.NET

Base de datos


Unas base de datos o banco de datos es un conjunto de datos que pertenecen al mismo contexto almacenados sistemáticamente para su posterior uso. En este sentido , una biblioteca puede considerarse una base de daros compuesta. en su mayoría por documentos y textos impresos en papel e indexados para su consulta. En la actualidad, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de la bases de datos tiene formato electrónico, que ofrece un amplio rango de soluciones al problema de almacenar datos.

En informática existen los sistemas gestores de bases de datos (SGBD), que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de los sistemas gestores de bases de datos se estudian en informática.

Funcionalidad de Base de datos 

Una base de datos (sea cual sea) es un soporte digital que tiene como fin el almacenamiento masivo de información en formato texto plano. No es capaz de almacenar imágenes como se cree, sino que almacena las rutas (path) de dichas fotos; ni almacena otro tipo de datos; sino que almacena sus rutas de acceso de ser necesario.

Las bases de datos, son utilizadas en sistemas que requieren una interacción fluida con la aplicación; estas se encargan muchas veces de administrar, editar, y dar de alta. Usualmente la base de datos, esta ligada a la programación directa del site, causando que una edición en ella cause una modificación directa en lo que ve el usuario.










Interfaces de acceso a bases de datos


Evolución histórica de los "estándares" propuestos por Microsoft:

ODBC (Open Database Connectivity): API estándar ampliamente utilizado, disponible para múltiples DBMSs, utiliza SQL para acceder a los datos.

DAO (Data Access Objects): Interfaz para programar con bases de datos JET/ISAM, utiliza automatización OLE y ActiveX.

RDO (Remote Data Objects): Fuertemente acoplado a ODBC, orientado al desarrollo de aplicaciones cliente/servidor.

OLE DB: Construido sobre COM, permite acceder a bases de datos tanto relacionales como no relacionales (no está restringido a SQL). Se puede emplear con controladores ODBC y proporciona un interfaz a bajo nivel en C++.

ADO (ActiveX Data Objects): Ofrece un interfaz orientado a objetos y proporciona un modelo de programación para OLE DB accesible desde lenguajes distintos a C++ (p.ej. Visual Basic).





ADO.NET

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 parte de la biblioteca de clases base que están incluidas en el Microsoft.NET Framework.



Arquitectura de ADO.NET




El funcionamiento de ADO.NET se basa esencialmente en utilizar los siguientes componentes:


Data Provider (proveedor de datos): Proporciona un acceso uniforme a conjuntos de datos (bases de datos relacionales o información ID3 de ficheros MP3). Su papel el similar al de un controlador ODBC o JDBC.


DataSet: El componente más importante, puede almacenar datos provenientes de múltiples consultas (esto es, múltiples tablas).


DataAdapter: Sirve de enlace entre el contenedor de conjuntos de datos (DataSet) y la base de datos (Data Provider).

Los componentes anteriores se completan con DataReader (para realizae eficientemente lecturas de grandes cantidades de datos que no caben en memoria), DataRelation (la forma de establecer una reunión entre dos tablas), Connection (utilizada por DataAdapter para conectarse a la base de datos) y Command (que permite especificar las órdenes, generalmente en SQL, que nos permiten consultar y modificar el contenido de la base de datos: select, insert, delete y update).






Clases ADO.NET


ADO .NET define una serie de interfaces que proporcionan la funcionalidad básica común a las distintas fuentes de datos accesibles a través de ADO .NET. La complementación de estos interfaces por parte de cada proveedor proporciona acceso a un tipo concreto de fuentes de datos y puede incluir propiedades y métodos adicionales.

Interfaz IDbConnection


Establece una sesión con una fuente de datos. Permite abrir y cerrar conexiones, así como comenzar transacciones (que se finalizan con los métodos Commit y Rollback de IDbTransaction. Las clases SqlDbConnection y OleDbConnection implementan el interfaz de IDbConnection.

Interfaz IDbCommand


Representa una sentencia que se envía a una fuente de datos (usualmente en SQL, aunque no necesariamente). Las clases SqlDbCommand y OleDbCommand implementan el interfaz de IDbCommand.

IDbCommand nos permite definir la sentencia que se ha de ejecutar, ejecutar la sentencia, pasar le parámetros y prepararla (crear una versión "compilada" de la misma para que su ejecución sea más eficiente cuando ha de repetirse varias veces). El método ExecuteReader devuelve un conjunto de tuplas (véase el interfaz IDataReader), mientras que ExecuteScalar devuelve un valor único (p.ej. ejecución de procedimientos almacenados) y ExecuteNonQuery no devuelve nada (p.ej. borrados y actualizaciones).

Interfaz IDataReader


Proporciona acceso secuencial de sólo lectura a una fuente de datos. Las clases SqlDataReader y OleDbDataReader implementan el interfaz de IDataReader. Al utilizar un objeto IDataReader, las operaciones sobre la conexión IDbConnection quedan deshabilitadas hasta que se cierre el objeto IDataReader.















Comentarios