tecnología de conectividad de datos

21
Tecnología de Conectividad de Datos

Transcript of tecnología de conectividad de datos

Page 1: tecnología de conectividad de datos

Tecnología de Conectividad de

Datos

Page 2: tecnología de conectividad de datos

TCD

JET

DBLIB

SQL-DMOODBC

OLE DB

Page 3: tecnología de conectividad de datos

Acceso Programático mediante DAO, RDO y

ADO

Page 4: tecnología de conectividad de datos

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)

Page 5: tecnología de conectividad de datos

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)

Page 6: tecnología de conectividad de datos

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)

Page 7: tecnología de conectividad de datos

'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

Page 8: tecnología de conectividad de datos

'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

Page 9: tecnología de conectividad de datos

'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

Page 10: tecnología de conectividad de datos

'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

Page 11: tecnología de conectividad de datos

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

Page 12: tecnología de conectividad de datos

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

Page 13: tecnología de conectividad de datos

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

Page 14: tecnología de conectividad de datos

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

Page 15: tecnología de conectividad de datos

DataSets

DataSet

DataAdapter

Dato

s

Propiedades:• Connection • Command

Page 16: tecnología de conectividad de datos

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

Page 17: tecnología de conectividad de datos

Modelo 2 capas

Page 18: tecnología de conectividad de datos

Modelo 3 capas

Page 19: tecnología de conectividad de datos
Page 20: tecnología de conectividad de datos
Page 21: tecnología de conectividad de datos