tecnología de conectividad de datos

Post on 05-Aug-2015

105 views 2 download

Transcript of tecnología de conectividad de datos

Tecnología de Conectividad de

Datos

TCD

JET

DBLIB

SQL-DMOODBC

OLE DB

Acceso Programático mediante DAO, RDO y

ADO

DAO es la interfaz de programación disponible para

comunicarse con JET. DAO se utiliza en contextos donde el motor reside en forma local y cuando se basan en ISAM.

DAO puede abrir datos remotos ODBC pasando a través de JET, aunque con grandes limitaciones de performance. Estas limitaciones se deben fundamentalmente a que JET es ineficiente en la negociación de conexiones y a que no realiza caché de los datos ODBC.

Cuando solamente se va a acceder a datos SQL, RDO es una mejor alternativa.

Como dato importante, DAO está siendo discontinuado por Microsoft.

DAO (Direct Access Objects)

RDO es una capa que abstrae los detalles de la ODBC API,

utilizada únicamente en aplicaciones de 32-bit. RDO es una alternativa eficiente para trabajar sobre ODBC (es

decir, sobre datos remotos), y con varias ventajas funcionales frente a DAO: ejecución de stored procedures del servidor de base de datos, ejecución asincrónica de consultas y procesamiento de múltiples tipos de cursores.

La principal ventaja de RDO es que fue diseñado para el uso eficiente de las funcionalidades de ODBC.

Como principales desventajas frente a DAO, RDO sólo dispone de conexión a datos ODBC a través de drivers de 32-bit y no está disponible en el Visual Basic for Applications disponible en Office 97. Esto último es una limitación fuerte para los desarrolladores de aplicaciones Office.

RDO (Remote Data Objects)

ADO es la interfaz a OLE DB y debe verse como un

modelo de programación, más que como una implementación específica. La aparición de ADO surge de la necesidad de acceder a datos en otros formatos (no necesariamente datos en bases de datos) en forma remota y con cierto énfasis en el entorno de Intranet/Internet. Esto último se logra a través de una interfaz al modelo de objetos distribuidos (DCOM, Distributed Common Object Model, una extensión de OLE a ambiente distribuido).

Si bien ADO aún no es una tecnología estable, Microsoft la considera como "su" tecnología de acceso a datos.

ADO (ActiveX Data Objects)

'Creacion del espacio de trabajo de JETDim ws as WorkspaceSet ws = CreateWorkspace("", "loginid", "passwd", dbUseJet)'Conexion a una base de datos JETDim db as DatabaseSet db = ws.OpenDatabase("C:\data\northwind.mdb")'Abrir un cursorDim rs as RecordSetSet rs = db.OpenRecordset("Empleados", dbOpenDynaset, dbReadonly)'Procesamiento…'Cierre y desconexionrs.Closedb.Closews.Close

Ejemplo 1. DAO

'Creacion del espacio de trabajoDim ws as WorkspaceSet ws = CreateWorkspace("", "loginid", "passwd", dbUseODBC)'Conexion a una base de datos ODBCDim cn as ConnectionSet cn = ws.OpenConnection("",,,"ODBC; DATABASE=pubs; UID=sa; PWD=; DSN=pubsdata")'Abrir un cursorDim rs as RecordSetSet rs = db.OpenRecordset("Empleados", dbOpenDynamic)'Procesamiento…'Cierre y desconexionrs.Closedb.Closews.Close

Ejemplo 2. DAO + ODBCDirect

'ConexionSet cn = New rdoConnectionWith cn.Connect = "DSN=pubsdata; UID=sa; PWD=".EstablishConnectionEnd With'Abrir un cursorDim rs as rdoresultsetSet rs = cn.OpenResultSet("Empleados", rdOpenKeyset, rdConcurReadOnly)

Ejemplo 3. RDO

'Abrir un cursorDim rs As New ADODB.RecordsetRs.Open "Empleados; DSN=pubsdata; UID=sa; PWD="'Procesamiento del cursorDo Until rs.EOFPrint rs!apellidoRs.MoveNextLoopEs.Close

Ejemplo 4. ADO

Comparación de métodos de acceso programático

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

Es usado por los programadores para acceder y para modificar los datos almacenados en un Sistema Gestor de Bases de Datos Relacionales.

También es usado para acceder a datos en fuentes no relacionales.

ADO.NET es a veces considerado como una evolución de la tecnología ActiveX Data Objects (ADO), pero fue cambiado tan extensivamente que puede ser concebido como un producto enteramente nuevo.

ADO .NET

Data providerConnection

Command

Parameter

Data Adapter

DataReader

DataSetsBD relacional en memoria

Se llena desde una BD por un DataAdapter

Puede guardar si contenido a XML

Puede llenar desde un XML

ADO .NET consiste de 2 partes

Connection: Proporciona una conexión usada para

comunicarse con la fuente de datos. También actúa como Abstract Factory para los objetos command.

Command: Usado para realizar alguna acción en la fuente de datos, como lectura, actualización, o borrado de datos relacionales.

Parameter: Describe un simple parámetro para un command. Un ejemplo común es un parámetro para ser usado en un procedimiento almacenado.

Data Adapter: "Puente" utilizado para transferir data entre una fuente de datos y un objeto DataSet (ver abajo).

DataReader: Es una clase usada para procesar eficientemente una lista grande de resultados, un registro a la vez.

Data provider

DataSets

DataSet

DataAdapter

Dato

s

Propiedades:• Connection • Command

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.

Data SetDataSet

DataTable

Nombre

Filas

Columnas

DataView

DataColumn

Nombre

Tipo

DataRow

DataRowView

DataRelation

Constraint

Modelo 2 capas

Modelo 3 capas