Download Diapositiva 1 - Biblioteca de la UNS

Document related concepts

Remote Data Objects wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

ADO.NET wikipedia , lookup

OLE DB wikipedia , lookup

Transcript
Microcomputación II
Unidad II
Administración de datos con MS-SQL Server y
Visual Basic
Tema:
Modelo ADO – Controles visuales y no visuales.
1
Objetivo General
 Conocer y comprender el uso de
lenguajes orientados a objetos.
 Resolver problemas de índole general que
interactúan con bases de datos.
2
Objetivo Terminal
Utilizar el administrador corporativo del MSSQL Server, en lo relacionado a la
administración de base de datos
3
Objetivo Instruccional
Establecer la conectividad de una aplicación con
bases de datos
4
Microcomputación II
SEMANA 09_1
5
Introducción
Microcomputación II
Visual Basic 6 tiene tres interfaces de acceso a
datos: objetos de datos ActiveX (ADO), objetos de
datos remotos (RDO) y objetos de acceso a datos
(DAO).
Una interfaz de acceso a datos es un modelo de
objetos que presenta diversas formas de tener
acceso a datos.
Visual Basic permite controlar por programa la
conexión, los generadores de instrucciones y los
datos devueltos que se usarán en cualquier
aplicación.
6
Introducción
Microcomputación II
¿Por qué hay tres interfaces de acceso a datos en
Visual Basic?
La tecnología de acceso a datos evoluciona
constantemente y cada una de estas tres
interfaces corresponde a un estado de la
evolución.
La tecnología más reciente es ADO, con un
modelo de objetos más sencillo (y aún más
flexible) que RDO o DAO.
7
Modelo DAO (Data Access Objects)
Microcomputación II
Objetos de acceso a datos
El modelo DAO, viene definido como sigue:
Podemos utilizar este modelo para manipular bases
de datos bien en el mundo nativo del motor de acceso
JET (.MDB) o bien en cualquier otro formato ISAM
(Fox, Dbase, Excel, Btrieve, Paradox y Text)
Adicionalmente, es posible utilizar el motor JET a la hora
de acceder a Microsoft SQL Server o a cualquier otra
base de datos que disponga de un driver de ODBC, con
el mismo código DAO.
8
Modelo RDO (Remote Data Objects)
Microcomputación II
Objetos de acceso a datos remotos
El modelo RDO viene definido como sigue:
Con RDO y el control RemoteData, nuestras aplicaciones
pueden acceder a fuentes de datos ODBC sin utilizar un
motor local. Este hecho es muy importante a la hora de
conseguir el máximo rendimiento y flexibilidad cuando
accedamos a motores de bases de datos remotos.
Aunque se puede acceder a cualquier fuente de datos
ODBC con RDO y el control de Acceso Remoto, donde
conseguiremos el mayor rendimiento será cuando
trabajemos con servidores de bases de datos, como
Microsoft SQL Server y Oracle, ya que disponen de los
más sofisticados motores
9
Modelo RDO (Remote Data Objects)
Microcomputación II
Objetos de acceso a datos remotos
Empleando RDO, podemos trabajar con todo tipo de
cursores desde los más simples a los más complejos.
Podemos ejecutar queries que devuelvan cualquier
número de resultados , o ejecutar procedimientos
almacenados que devuelvan resultados con o sin
parámetros y valores de retorno. Podemos limitar el
número de filas que se devuelven, y monitorizar todos los
mensajes y errores generados por la fuente de datos
remota sin que esto afecte a la query que se está
ejecutando. RDO permite operaciones tanto síncronas
como asíncronas, por lo que nuestra aplicación no queda
bloqueada mientras se ejecutan largas queries.
10
Diferencias entre los modelos DAO y RDO
Microcomputación II
 El modelo DAO se emplea con bases de datos ISAM, Access y
ODBC databases. El modelo RDO se halla diseñado únicamente para
bases de datos ODBC, y ha sido optimado para su uso contra
Microsoft SQL Server 6.0 y Oracle.
 El modelo RDO puede tener mayor rendimiento, ya que todo el
proceso se lleva a cabo en el servidor y no en nuestra máquina. Con
el modelo DAO parte del proceso se lleva a cabo en nuestra máquina
local por lo que con este modelo, el rendimiento puede no ser tan
bueno.
 El modelo DAO emplea el motor del Jet. Sin embargo, el RDO no
emplea el motor del JET, sino el motor ODBC del servidor.
 El modelo RDO es capaz de llevar a cabo queries síncronas o
asíncronas. El DAO tiene limitaciones a la hora de ejecutar este tipo
de queries.
11
 El modelo RDO puede trabajar con cursores complejos, los cuales se
encuentran limitados en el DAO.
Modelo ADO (Activex Data Objects)
Microcomputación II
Objetos de datos activex
La interfaz ADO se ha diseñado como una interfaz de nivel de
aplicación fácil de usar para el más nuevo y eficaz paradigma de
acceso a datos de Microsoft, OLE DB. OLE DB proporciona un
acceso de alto rendimiento a cualquier origen de datos, incluidos
bases de datos relacionales y no relacionales, correo electrónico y
sistemas de archivos, texto y gráficos, objetos de negocios
personalizados y mucho más.
La implementación de ADO genera una cantidad mínima de
transferencias a través de la red en escenarios clave de Internet y
utiliza un número mínimo de capas entre el servidor y el origen de
datos para proporcionar una interfaz compacta de alto rendimiento.
Una metáfora habitual es hacer referencia a ADO como la interfaz de
automatización de OLE. Además ADO utiliza convenciones y
funciones similares a las de DAO y RDO, con una semántica
simplificada que facilita su aprendizaje.
12
DAO, RDO, ADO
Microcomputación II
En ese orden fueron creados, DAO, RDO y ADO.
DAO fue creado simplemente para acceder a bases de datos locales
(en particular las de Access), y si bien esta tarea la cumple de forma
muy eficiente con las antiguas versiones de Access, existen serios
problemas para conectarse a bases de datos remotas o de nuevas
versiones.
Para esto surgió RDO.
RDO permite conectar a bases de datos de forma remota a través de
ODBC, rentringiéndose a este tipo de conexión.
De todas formas, al crearse un nuevo tipo de conectividad (OLE DB)
el RDO queda obsoleto y surge como consecuencia al ADO, que es
el estándar utilizado por VB 6.
El ADO permite conectarse con cualquier proveedor OLE DB
(incluyendo pero sin restringirse al ODBC), y tiene una performance
en bases de datos locales y remotas muy superior al RDO.
13