tecnología de conectividad de datos
TRANSCRIPT
![Page 1: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/1.jpg)
Tecnología de Conectividad de
Datos
![Page 2: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/2.jpg)
TCD
JET
DBLIB
SQL-DMOODBC
OLE DB
![Page 3: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/3.jpg)
Acceso Programático mediante DAO, RDO y
ADO
![Page 4: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/7.jpg)
'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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/8.jpg)
'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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/9.jpg)
'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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/10.jpg)
'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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/11.jpg)
Comparación de métodos de acceso programático
![Page 12: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/15.jpg)
DataSets
DataSet
DataAdapter
Dato
s
Propiedades:• Connection • Command
![Page 16: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/17.jpg)
Modelo 2 capas
![Page 18: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/18.jpg)
Modelo 3 capas
![Page 19: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/19.jpg)
![Page 20: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/20.jpg)
![Page 21: tecnología de conectividad de datos](https://reader036.vdocuments.pub/reader036/viewer/2022062515/55c1a34abb61ebdf438b477f/html5/thumbnails/21.jpg)