Download Conectividad

Document related concepts
no text concepts found
Transcript
UNIVERSIDAD EVANGELICA DE EL SALVADOR
COMERCIO ELECTRONICO
CONECTIVIDAD DE BASE DE DATOS A SERVIDORES WEB
ALUMNA
:
NATALIA MARGARITA RECINOS BENITEZ
CARNET
:
0305-032-0085
1
Contenido
1.
INTRODUCCION ........................................................................................................................... 3
2.
OBJETIVOS ................................................................................................................................... 4
3. CONTROLADORES PARA CONECTIVIDAD DE BASES DE DATOS E INTERCAMBIO DE
INFORMACIÓN .................................................................................................................................... 5
1.
OLE (Open Database Connectivity) ......................................................................................... 5
2.
CGI (Common Gateway Interface o Interfaz de pasarela común) ......................................... 6
3.
JDBC (Java Data Base Connectivity) ........................................................................................ 7
4.
ASP (ADO) .................................................................................................................................. 12
5.
Otras Tecnologías ...................................................................................................................... 14
6.
CONCLUSIONES ......................................................................................................................... 19
7.
BIBLIOGRAFIA ............................................................................................................................ 20
2
1. INTRODUCCION
Hoy en día la Web se ha convertido en una interfaz de acceso a datos que puede ser utilizada por
cualquier usuario. Es por eso que es necesario que la presentación de la información a través de la
Web sea un reflejo del avance tecnológico en las tecnologías de conectividad en Base de Datos.
Esta nueva generación de aplicaciones esta orientada a asociarse con servidores de alto
rendimiento pensados para dar servicio a sitios Web con grandes necesidades para gestionar
movimientos de datos, afluencia de visitas, atención de transacciones hacia bases de datos, etc.
Estos servidores son esencialmente un programa que escucha en un puerto a la espera de
conexiones. Cuando se detecta una, el servidor espera a recibir una petición en formato adecuado
desde la aplicación cliente (navegador, gestor de descargas, indexador de páginas, telnet, etc.). El
recurso pedido hace referencia a un archivo en el disco duro que el servidor es capaz de recuperar
y enviar al cliente. Tanto la petición como la respuesta se encapsulan siguiendo el protocolo HTTP.
Un servidor de aplicaciones clásico se apoya en un modelo cliente/servidor de tres capas:
 Presentación: una interfaz, generalmente gráfica que reside en los clientes. El ejemplo
típico es un navegador.
 Lógica de negocio: donde reside el servidor de aplicaciones y el conjunto de programas a
los que da soporte.
 Almacenamiento: generalmente una base de datos.
Los servicios añadidos a los servidores de aplicaciones suelen ser: generación de código HTML ó
XML, trabajo con bases de datos y gestión de transacciones, funcionamiento multiproceso para
atender a distintas peticiones, establecimiento de distintas sesiones para acceso de usuarios,
mecanismos de seguridad y autentificación, monitorización para evitar fallos, etc.
Con tecnologías como el scripting y DHTML, los desarrolladores de aplicaciones pueden crear
acciones con interfaces de Web funcionales, basadas para la entrada de datos o salida de
resultados de búsqueda sin usar controles comunes o applets.
Las interfaces de programación denotan el proceso de acceso y manipulación de los datos a una
base de datos, partiendo de la aplicación, los cuales necesitan de controladores que gestionen la
conectividad y la comunicación. A continuación se presentan los tipos de conectores hacia las
bases de datos vía Web.
3
2. OBJETIVOS
 Investigar acerca de conectividad de la Base de Datos en servidores web.
 Identificar los diferentes controladores de intercambio de Información.
 Conocer los elementos que componen los conectores de Base de Datos
4
3. CONTROLADORES PARA CONECTIVIDAD DE BASES DE
DATOS E INTERCAMBIO DE INFORMACIÓN
1. OLE (Open Database Connectivity)
Es la sigla de Object Linking and Embedding for Databases ("Incrustación y enlace de objetos para
bases de datos") y es una tecnología desarrollada por Microsoft usada para tener acceso a
diferentes fuentes de información, o bases de datos, de manera uniforme.
Estructura:
OLE DB permite separar los datos de la aplicación que los requiere. Esto se hizo así ya que
diferentes aplicaciones requieren acceso a diferentes tipos y almacenes de datos, y no
necesariamente desean conocer cómo tener acceso a cierta funcionalidad con métodos de
tecnologías específicas. OLE DB está conceptualmente dividido en consumidores y proveedores; El
consumidor es la aplicación que requiere acceso a los datos y el proveedor es el componente de
software que expone una interfaz OLE DB a través del uso del Component Object Model (COM).
Conexiones OLE DB:
Puede utilizar un proveedor OLE DB para comunicar con la base de datos. La creación de una
conexión directa de base de datos OLE puede mejorar la velocidad de la conexión mediante la
eliminación de la capa ODBC entre la aplicación Web y la base de datos.
Si no especifica un proveedor OLE DB para la base de datos, ASP utilizará el proveedor OLE DB
predeterminado para controladores ODBC para comunicar con un controlador ODBC que, a su vez,
comunica con la base de datos.
OLE DB está disponible sólo con Windows NT, 2000 o XP.
Existen distintos proveedores OLE DB para las distintas bases de datos. Puede obtener
proveedores OLE DB para Microsoft Access y SQL Server descargando e instalando los paquetes
Microsoft Data Access Components (MDAC) 2.5 y 2.7 en el equipo Windows que está ejecutando
IIS.
5
2. CGI (Common Gateway Interface
o Interfaz de pasarela
común)
Es la especificación de un protocolo que permite al servidor Web (HTTP) comunicarse con
programas o scripts externos. Los programas CGI trabajan en el servidor Web y pueden
implementarse utilizando diferentes lenguajes de programación (COBOL, C, Perl, etc.). Para que el
usuario recupere un documento dinámico HTML a través de CGI, generalmente se sigue la
siguiente secuencia básica:
1) El usuario complementa los campos de un formulario HTML y pulsa el botón de envío.
Antes de proceder al mismo, el navegador determina el método HTTP para el envío,
identifica los campos del formulario, construye el conjunto de datos como pares: nombre
del control / valor asociado y codifica el conjunto de datos.
2) El navegador realiza una solicitud HTTP al servidor Web, enviando el conjunto de datos del
formulario para que sea procesado por el programa especificado en el atributo del
formulario action.
3) El servidor recibe la solicitud y a partir de ella determina que se le está pidiendo la
activación de un programa CGI. Se lanza un nuevo proceso CGI que recibe la información
necesaria para su ejecución.
4) El programa CGI se ejecuta procesando la información y devolviendo el resultado al
servidor Web.
5) El servidor recibe el resultado de proceso CGI y prepara una respuesta HTTP válida
(anexando alguna cabecera) que se le envía al cliente.
6) El navegador muestra el resultado recibido que contendrá información dependiente de lo
que el usuario introdujo en el formulario HTML.
El CGI es una de las soluciones que se está utilizando más para la creación de interfaces
Web/DBMS. Entre las ventajas de la programación CGI, destaca la sencillez, ya que es muy fácil de
entender, además de ser un lenguaje de programación independiente, ya que los escritos CGI
pueden elaborarse en varios lenguajes. También es un estándar para usarse en todos los
servidores Web, y funcionar bajo una arquitectura independiente, ya que ha sido creado para
trabajar con cualquier arquitectura de servidor Web. Como la aplicación CGI se encuentra
funcionando de forma independiente, no pone en peligro al servidor, en cuanto al cumplimiento
de todas las tareas que éste se encuentre realizando, o al acceso del estado interno del mismo.
Pero el CGI presenta cierta desventaja en su eficiencia, debido al que el servidor Web tiene que
cargar el programa CGI y conectar y desconectar con la base de datos cada vez que se recibe una
requisición. Además, no existe un registro del estado del servidor, sino que todo hay que hacerlo
manualmente.
6
3. JDBC (Java Data Base Connectivity)
La información contenida en un servidor de bases de datos es normalmente el bien más preciado
dentro de una empresa. La API JDBC ofrece a los desarrolladores Java un modo de conectar con
dichas bases de datos. Utilizando la API JDBC, los desarrolladores pueden crear un cliente que
pueda conectar con una base de datos, ejecutar instrucciones SQL y procesar el resultado de esas
instrucciones.
La API proporciona conectividad y acceso a datos en toda la extensión de las bases de datos
relacionales. JDBC generaliza las funciones de acceso a bases de datos más comunes abstrayendo
los detalles específicos de una determinada base de datos. El resultado es un conjunto de clases e
interfaces, localizadas en el paquete java.sql, que pueden ser utilizadas con cualquier base de
datos que disponga del driver JDBC apropiado. La utilización de este driver significa que, siempre y
cuando una aplicación utilice las características más comunes de acceso a bases de datos, dicha
aplicación podrá utilizarse con una base de datos diferente cambiando simplemente a un driver
JDBC diferente.
TIPOS DE DRIVER JDBC
Una de las decisiones importantes en el diseño, cuando estamos proyectando una aplicación de
bases de datos Java, es decidir el driver JDBC que permitirá que las clases JDBC se comuniquen con
la base de datos. Los driver JDBC se clasifican en cuatro tipos o niveles:




Tipo 1: Puente JDBC-ODBC
Tipo 2: Driver API nativo/parte Java
Tipo 3: Driver protocolo de red/todo Java
Tipo 4: Driver protocolo nativo/todo Java
Tipo 1: Driver puente JDBC-ODBC
El puente JDBC-ODBC es un driver JDBC del tipo 1 que traduce operaciones JDBC en llamadas a la
API ODBC. Estas llamadas son entonces cursadas a la base de datos mediante el driver ODBC
apropiado.
El puente se implementa como el paquete sun.jdbc.odbc y contiene una biblioteca nativa utilizada
para acceder a ODBC.

Ventajas
7
 A menudo, el primer contacto con un driver JDBC es un puente JDBC-ODBC, simplemente
porque es el driver que se distribuye como parte de Java, como el paquete
sun.jdbc.odbc.JdbcOdbcDriver.
 Además tiene la ventaja de poder trabajar con una gran cantidad de drivers ODBC. Los
desarrolladores suelen utilizar ODBC para conectar con bases de datos en un entorno
distinto de Java. Por tanto, los drivers de tipo 1 pueden ser útiles para aquellas compañías
que ya tienen un driver ODBC instalado en las máquinas clientes. Se utilizará normalmente
en máquinas basadas en Windows que ejecutan aplicaciones de gestión.

Desventajas
Básicamente sólo se recomienda su uso cuando se están realizando esfuerzos dirigidos a
prototipos y en casos en los que no exista otro driver basado en JDBC para esa tecnología. Si es
posible, debemos utilizar un driver JDBC en vez de un puente y un driver ODBC. Esto elimina
totalmente la configuración cliente necesaria en ODBC.
Los siguientes puntos resumen algunos de los inconvenientes de utilizar el driver puente:
 Rendimiento: Como puede imaginar por el número de capas y traducciones que tienen
lugar, utilizar el puente está lejos de ser la opción más eficaz en términos de rendimiento.
 Utilizando el puente JDBC-ODBC, el usuario está limitado por la funcionalidad del driver
elegido. Es más, dicha funcionalidad se limita a proporcionar acceso a caraterísticas
comunes a todas las bases de datos. No pudiendo hacer uso de las mejoras que cada
fabricante introduce en sus productos, especialmente en lo que afecta a rendimiento y
escalabilidad.
 El driver puente no funciona adecuadamente con applets. El driver ODBC y la interfaz de
conexión nativa deben estar ya instalados en la máquina cliente. Por eso, cualquier
ventaja de la utilización de applets en un entorno de Intranet se pierde, debido a los
problemas de despliegue que conllevan las aplicaciones tradicionales.
 La mayoría de los browser no tienen soporte nativo del puente. Como el puente es un
componente opcional del Java 2 SDK Standard Edition, no se ofrece con el navegador.
Incluso si fuese ofrecido, sólo los applets de confianza (aquellos que permiten escribir en
archivos) serán capaces de utilizar el puente. Esto es necesario para preservar la seguridad
de los applet. Para terminar, incluso si el applet es de confianza, ODBC debe ser
configurado en cada máquina cliente.
Tipo 2: Driver API Nativo / parte Java
8
Los drivers de tipo 2, del que es un ejemplo el driver JDBC/OCI de Oracle, utilizan la interfaz de
métodos nativos de Java para convertir las solicitudes de API JDBC en llamadas específicas a bases
de datos para RDBMS como SQL Server, Informix, Oracle o Sybase
Aunque los drivers de tipo 2 habitualmente ofrecen mejor rendimiento que el puente JDBC-ODBC,
siguen teniendo los mismos problemas de despliegue en los que la interfaz de conectividad nativa
debe estar ya instalada en la máquina cliente. El driver JDBC necesita una biblioteca suministrada
por el fabricante para traducir las funciones JDBC en lenguaje de consulta específico para ese
servidor. Estos drivers están normalmente escritos en alguna combinación de Java y C/C++, ya que
el driver debe utilizar una capa de C para realizar llamadas a la biblioteca que está escrita en C.

Ventajas
 El driver de tipo 2 ofrece un rendimiento significativamente mayor que el puente
JDBC-ODBC, ya que las llamadas JDBC no se convierten en llamadas ODBC, sino que
son directamente nativas.

Desventajas
 La biblioteca de la base de datos del fabricante necesita iniciarse en cada máquina
cliente. En consecuencia, los drivers de tipo 2 no se pueden utilizar en Internet. Los
drivers de tipo 2 muestran menor rendimiento que los de tipo 3 y 4.
 Un driver de tipo 2 también utiliza la interfaz nativa de Java, que no está
implementada de forma consistente entre los distintos fabricantes de JVM por lo que
habitualmente no es muy portable entre plataformas.
Tipo 3: Driver protocolo de red / todo Java
Los drivers JDBC de tipo 3 están implementados en una aproximación de tres capas por lo que las
solicitudes de la base de datos JDBC están traducidas en un protocolo de red independiente de la
base de datos y dirigidas al servidor de capa intermedia. El servidor de la capa intermedia recibe
las solicitudes y las envía a la base de datos utilizando para ello un driver JDBC del tipo 1 o del tipo
2 (lo que significa que se trata de una arquitectura muy flexible).
La arquitectura en conjunto consiste en tres capas: la capa cliente JDBC y driver, la capa
intermedia y la base o las bases de datos a las que se accede.
El driver JDBC se ejecuta en el cliente e implementa la lógica necesaria para enviar a través de la
red comandos SQL al servidor JDBC, recibir las respuestas y manejar la conexión.
El componente servidor intermedio puede implementarse como un componente nativo, o
alternativamente escrito en Java. Las implementaciones nativas conectan con la base de datos
9
utilizando bien una biblioteca cliente del fabricante o bien ODBC. El servidor tiene que
configurarse para la base o bases de datos a las que se va a acceder. Esto puede implicar
asignación de números de puerto, configuración de variables de entorno, o de cualquier otro
parámetro que pueda necesitar el servidor.

Ventajas
 El driver protocolo de red/todo Java tiene un componente en el servidor intermedio,
por lo que no necesita ninguna biblioteca cliente del fabricante para presentarse en las
máquinas clientes.
 Los drivers de tipo 3 son los que mejor funcionan en redes basadas en Internet o
Intranet, aplicaciones intensivas de datos, en las que un gran número de operaciones
concurrentes como consultas, búsquedas, etc., son previsibles y escalables y su
rendimiento es su principal factor. Hay muchas oportunidades de optimizar la
portabilidad, el rendimiento y la escalabilidad.
 El protocolo de red puede estar diseñado para hacer el driver JDBC cliente muy
pequeño y rápido de iniciar, lo que es perfecto para el despliegue de aplicaciones de
Internet.
 Además, un driver tipo 3 normalmente ofrece soporte para características como
almacenamiento en memoria caché (conexiones, resultados de consultas, etc.),
equilibrio de carga, y administración avanzada de sistemas como el registro.
 La mayor parte de aplicaciones web de bases de datos basadas en 3 capas implican
seguridad, firewalls y proxis y los drivers del tipo 3 ofrecen normalmente estas
características.

Inconvenientes
 Los drivers de tipo 3 requieren código específico de bases de datos para realizarse en
la capa intermedia.
 Además, atravesar el conjunto de registros puede llevar mucho tiempo, ya que los
datos vienen a través del servidor de datos.
Tipo 4: Driver protocolo nativo / todo Java
Este tipo de driver comunica directamente con el servidor de bases de datos utilizando el
protocolo nativo del servidor. Estos drivers pueden escribirse totalmente en Java, son
independientes de la plataforma y eliminan todos los aspectos relacionados con la configuración
en el cliente. Sin embargo, este driver es específico de un fabricante determinado de base de
datos. Cuando la base de datos necesita ser cambiada a un producto de otro fabricante, no se
puede utilizar el mismo driver. Por el contrario, hay que reemplazarlo y también el programa
10
cliente, o su asignación, para ser capaces de utilizar una cadena de conexión distinta para iniciar el
driver. Estos drivers traducen JDBC directamente a protocolo nativo sin utilizar ODBC o la API
nativa, por lo que pueden proporcionar un alto rendimiento de acceso a bases de datos.

Ventajas
 Como los drivers JDBC de tipo 4 no tienen que traducir las solicitudes de ODBC o de
una interfaz de conectividad nativa, o pasar la solicitud a otro servidor, el rendimiento
es bastante bueno. Además, el driver protocolo nativo/todo Java da lugar a un mejor
rendimiento que los de tipo 1 y 2. Además, no hay necesidad de instalar ningún
software especial en el cliente o en el servidor. Además, estos drivers pueden bajarse
de la forma habitual.

Desventajas
 Con los drivers de tipo 4, el usuario necesita un driver distinto para cada base de
datos.
La arquitectura JDBC está basada en un conjunto de clases Java que permiten conectar con bases
de datos, crear y ejecutar sentencias SQL o recuperar y modificar la información almacenada en
una base de datos.





Cargar un driver de base de datos
Establecer conexiones con bases de datos
Crear y ejecutar instrucciones SQL
Consultar bases de datos
Realizar transacciones
 Cargar un driver de base de datos y abrir conexiones
La interfaz java.sql.Connection representa una conexión con una base de datos. Es una interfaz
porque la implementación de una conexión depende de la red, del protocolo y del vendedor. El
API JDBC ofrece dos vías diferentes para obtener conexiones. La primera utiliza la clase
java.sql.DriverManager y es adecuada para acceder a bases de datos desde programas cliente
escritos en Java.
En una aplicación, podemos obtener una o más conexiones para una o más bases de datos
utilizando drivers JDBC. Cada driver implementa la interfaz java.sql.Driver. Uno de los métodos
11
que define esta interfaz es el método connect(), que permite establecer una conexión con la base
de datos y obtener un objeto Connection.
En lugar de acceder directamente a clases que implementan la interfaz java.sql.Driver, el enfoque
estándar para obtener conexiones es registrar cada driver con java.sql.DriverManager y utilizar los
métodos proporcionados en esta clase para obtener conexiones. java.sql.DriverManager puede
gestionar múltiples drivers. Antes de entrar en los detalles de este enfoque, es preciso entender
cómo JDBC representa la URL de una base de datos.

Establecer una conexión
Para comunicar con una base de datos utilizando JDBC, debemos en primer lugar establecer una
conexión con la base de datos a través del driver JDBC apropiado. El API JDBC especifica la
conexión en la interfaz java.sql.Connection.

Crear y ejecutar instrucciones SQL
Antes de poder ejecutar una sentencia SQL, es necesario obtener un objeto de tipo Statement.
Una vez creado dicho objeto, podrá ser utilizado para ejecutar cualquier operación contra la base
de datos.

Realizar Transacciones
Acá se ejecutarán las transacciones para extraer u obtener información o bien realizar algún
proceso en la Base de Datos.
4. ASP (ADO)
Microsoft ha desarrollado sus propias aplicaciones y servidores. Las primeras soluciones se
basaban en el servidor Web ISS (Internet Information Server), el lenguaje de script ASP (Active
Server Pages) y la tecnología de objetos distribuidos COM (Componente Object Model). ASP
proporciona acceso a datos apoyándose en los objetos ADO (ActiveX Data Objects) y ODBC. El uso
de la interfaz ODBC le permite a ASP trabajar sobre cualquier sistema gestor de bases de datos
que proporcione un controlador o driver (MySQL, SQL Server, Oracle, Informix, etc.). Los objetos
ADO, basados en la tecnología COM (Component Object Model), ofrecen métodos que encapsulan
el acceso a datos para su utilización en páginas ASP (Connection, RecordSet, Command, etc.).
Interfaces de Programación para el acceso a datos.
12

La primera interfaz corresponde a la de Aplicación, la cual abarca y/o corresponde a cada
uno de los programas clientes.
 La Interfaz de Objetos de Acceso a Datos, se encuentra como punto medio entre las
aplicaciones y las API's que llegan a ser necesarias para el acceso a las bases de datos.
Entre las tecnologías que pertenecen a la Interfaz de Objetos de Acceso de Datos
encontramos:
 DAO (Data Access Objects)
 ADO (ActiveX Data Objects)
Por lo general, las interfaces de objetos de datos son más fáciles de usar que las APIS,
aunque las APIs ofrecen más funcionalidades. ADO (ActiveX Data Objects) es la interfaz de
objetos de datos para OLE DB, y RDO (Remote Data Objects) es la interfaz para el objeto
ODBC. ADO encapsula el API OLE DB en un modelo objeto simple que reduce el
desarrollo, mantenimiento y costo de la aplicación. Es muy fácil de usar, utiliza lenguajes
de programación como Visual Basic, Java, C++, VBScript y JScript, puede accesar datos
desde cualquier recurso OLE DB y además, es extensible. Es la interfaz utilizada por
Microsoft. ADO está compuesto de siete objetos, algunos de alto nivel como Connection,
Command y Recordset, que pueden ser creados y eliminados por el usuario y otros con
distintas funcionalidades como designar propiedades de conexión, definir sentencias y
ejecutarlas.
 RDO (Remote Data Object)
 RDS (Remote Data Service)
 MIDAS (Middle-tier Distributed Application Service).
Su función es encapsular los componentes que se encuentran en la interfaz que corresponde a la
de API's, con la finalidad de reducir el desarrollo de la aplicación y los costos de mantenimiento y
deben situarse en todos los equipos que ejecuten la aplicación, ya que se encuentran casi de
manera conjunta con la aplicación.
Por su parte, la Interfaz de Programación de Aplicaciones (Application Programming Interface,
API), se encarga de mantener el diálogo con la base de datos, para poder llevar a cabo el acceso y
manipulación de los datos. Algunos de los componentes que forman parte de esta interfaz son los
siguientes: OLE DB, ODBC (Open Database Connectivity), JDBC (Java Data Base Connectivity), ISAPI
(Internet Server Application Programming Interface) y CGI (Common Gateway Interface).
La función que tienen las API's, es la de ser una interfaz entre las aplicaciones y las bases de datos,
llevando ésta tarea unas veces a través de los clientes y otros a través del servidor de base de
datos. Esto quiere decir, que puede darse el caso de que el cliente conste de las tres primeras
interfaces o niveles, o que se encuentren las dos últimas en el servidor. La interfaz
correspondiente a la base de datos, es donde se encontrará el servidor y toda la información
depositada en él.
13
Para poder accesar y manipular la información de una base de datos, es necesario llevar a cabo la
instalación de ciertos API's o controladores, que son indispensables para efectuar la conectividad
de los datos externos, y vincularlos a la aplicación para su correcta y adecuada utilización.
Las API's que se describen a continuación, son un claro ejemplo del proceso correspondiente a la
conectividad de datos.
ODBC (Open Data Base Connectivity): Esta tecnología proporciona una interfaz común para tener
acceso a bases de datos SQL heterogéneas. ODBC está basado en SQL (Structured Query
Language) como un estándar para tener acceso a datos. ODBC permite la conexión fácil desde
varios lenguajes de programación y se utiliza mucho en el entorno Windows. Sobre ODBD
Microsoft ha construido sus extensiones OLE DB y ADO. Los OCBD se pueden clasificar en 3
categorías:
Los ODBC's que permitan la realización de consultas y actualizaciones.
Los ODBC's que mediante ellos se pueda llegar a la creación de tablas en la base de datos.
Los ODBC's propios de los DBMS, los cuales se pueden llegar a manipular ciertas herramientas de
administración.
5. Otras Tecnologías
ISAPI (Internet Server Application Programming Interface): Es la interfaz propuesta por Microsoft
como una alternativa más rápida que el CGI, y está incluida en el Servidor Microsoft Internet
Information (IIS). Así como los escritos CGI, los programas escritos usando ISAPI habilitan un
usuario remoto para ejecutar un programa, busca información dentro de una base de datos, o
intercambia información como otro software localizado en el servidor. Los programas escritos
usando la interfaz ISAPI son compilados como bibliotecas de enlace dinámico (DLL - Dinamic Link
Library), ya que son cargados por el servidor Web cuando éste se inicia. Dichos programas se
vuelven residentes en memoria, por lo que se ejecutan mucho más rápido que las aplicaciones
CGI, debido a que requieren menos tiempo de uso de CPU al no iniciar procesos separados. Uno
de los programas ISAPI más usados es el HTTPODBC.DLL que se usa para enviar y/o devolver
información hacia y desde las bases de datos, a través de ODBC.
DBI (PERL): Perl es uno de los lenguajes más utilizados para programación en la Web y
proporciona su propia interfaz de acceso a datos, llamada DBI (DataBase Interface). Es
especialmente utilizado bajo plataformas Linux/Unix, solucionando las complejidades de ODBC en
estos sistemas. DBI actúa como una abstracción para un conjunto de módulos DBD (DataBase
Driver). Cada módulo DBD actúa como manejador de un sistema gestor de base de datos distinto.
14
Existen módulos para prácticamente cualquier SGBD (Oracle, Informix, MySQL, etc.) y puentes
hacia otras tecnologías como ADO, JDBC.
SQL LINKS: se trata de controladores que se encargan de realizar la comunicación remota entre la
aplicación y los servidores remotos de bases de datos, permitiendo una comunicación casi directa
y muy rápida. Los ha desarrollado la empresa Inprise y permiten conexiones con otros servidores
de bases de datos como Interase, Oracle, Sybase, Informix, Microsoft SQL Server, etc.
DB-CONNECTOR
Db-Connector es una interfaz entre cualquier base de datos ODBC y el World Wide Web que
permite conectar bases de datos a un servidor Web sin necesidad de mover los archivos al equipo
donde se ejecuta dicho servidor. Esto posibilita ejecutar db-Connector detrás de un firewall.
Db-Connector trabaja con un lenguaje independiente de la base de datos, el cual es fácil de utilizar
y evita todo el trabajo de programación que normalmente debería realizarse para la escritura de
extensiones CGI. Las únicas tareas que deben llevarse a cabo son construir las consultas a la base
de datos por medio de sentencias o instrucciones SQL y pensar cómo dar formato a los resultados.
Plantillas Db-Connector (DTL)
DTL es utilizado para ejecutar acciones en una base de datos y para construir el despliegue de los
resultados en formato HTML. Este lenguaje se aplica dentro de los archivos de plantillas con
extensión .dtl, que pueden contener etiquetas especiales DTL, así como también etiquetas de
formato estándar HTML. Las etiquetas DTL son leídas, filtradas y procesadas por el servidor dbConnector, de tal forma que se el despliegue de los resultados se presenta siempre en formato
HTML.
Microsoft dbWeb
Es una herramienta de software que funciona como interfaz entre una fuente de datos ODBC
(Microsoft Open Database Connectivity) y el Servidor Web. Es una aplicación CGI (Common
Gateway Interface) de alta funcionalidad implementada como un servicio de 32-bits de Windows
NT multitarea.
dbWeb ofrece una forma especial de publicar en el World Wide Web (WWW) o en una red
intranet, aquella información extraída de una base de datos; esto se hará a través de una fuente
de datos ODBC, y puede realizarse sin la necesidad de contar con un software adicional al del
browser Web en el equipo cliente, ya sea en computadoras con Windows, Macintosh o Unix.
15
Con dbWeb se logra obtener un acceso a diferentes bases de datos, a través de Servidores Web
HTTP corriendo bajo plataformas Microsoft Windows NT. Así, éste paquete provee de las
capacidades de Insertar/Actualizar/Borrar los datos de los registros que sean elegidos a través de
sentencias SQL. Dichos datos son desplegados en una forma tabular, detallada o personalizada, y
de manera opcional pueden contener enlaces en hipertexto que permitan navegar a través de la
información.
Accede la información de una base de datos utilizando cualquier computadora que pueda correr
un browser (browser) Web. La base de datos residirá en cualquier plataforma que pueda
accederse a través de un ODBC de 32-bits.
Los requerimientos de Hardware para la instalación y correcto funcionamiento de dbWeb son los
siguientes:




Sistemas Intel-Pentium o compatibles.
Procesador 386/25, superior o Pentium.
Como mínimo 16 MB de memoria RAM.
10 MB disponibles de espacio en disco duro.
dbWeb hará uso de un Servidor Web que soporte las especificaciones CGI 1.1. Entre ellos se
pueden tener: Alibaba, EMWAC HTTPS, Purveyor, Website, Servidores Netscape, Microsoft
Internet Information Server (IIS).
Arquitectura de dbWeb
Así, a través de dicho URL se hace la requisición al servidor Web, y éste a su vez la hace al Cliente
ISAPI dbWeb (escrito CGI), el cual solicita al Servicio dbWeb, los datos que necesita extraer de la
base de datos.
El Servicio dbWeb abre y comparte conexiones, para minimizar el tiempo de cada una de ellas, así
como los recursos que sean utilizados.
Las páginas HTML que son devueltas por dbWeb, son generadas de forma dinámica, mediante el
uso de los esquemas creados con el uso del Administrador, gracias a lo cual no se necesita
aprender HTML o programación CGI para publicar una base de datos en el Web.
Estos esquemas son registros alojados dentro del depósito dbWeb y poseen la ventaja de ser
procesados muy rápidamente, ya que en un par de minutos pueden ser creados y accedidos sin la
necesidad de escribir una línea de código.
16
Creación de Esquemas
Para llevar a cabo la tarea de creación de esquemas, dbWeb posee la herramienta de el Diseñador
de Esquemas dbWeb. Este, permite hacer uso de una interfaz gráfica mediante la cual pueden
visualizarse de una manera más fácil y directa, tanto una base de datos y como sus respectivos
campos.
Pero, antes de poder crear un esquema se necesita definir la conexión con la base de datos en sí, a
través del uso de los ODBC. Es decir, hay que crear una fuente de datos que haga el enlace con la
base de datos que se desea acceder, y luego desde el esquema que se quiera crear, hacer
referencia a dicha fuente de datos.
En definitiva, el esquema se encargará de procesar los documentos HTML para realizar la acción
que se requiere de tal manera que el usuario se vea satisfecho de manipular la información dentro
de la base de datos.
DBMS
Microsoft SQL Server, Visual FoxPro, FoxPro, Access, Oracle, Sybase, y otras bases de datos que
soporten las fuentes de datos ODBC de 32-bits.
Desde el browser Web se envía una solicitud de acceso a una base de datos, hacia el programa CGI
dbWeb ejecutable, y éste a su vez envía la orden al servicio Web, el cual se conecta con el ODBC
correspondiente y éste con la base de datos. Luego, el servicio dbWeb da a los resultados el
formato HTML, que serán desplegados en el browser Web.




Características No requiere conocimientos de CGI ni de HTML.
Procesamiento de datos y uso de ODBC de 32-bits.
Compatible con las especificaciones CGI 1.1.
Conexión con cualquier plataforma en que se corra un browser (browser) Web, o con
aquella que soporte ODBC de 32-bits.
 Rápida forma de distribuir información dentro de redes locales o de área amplia a través
de presentaciones tabulares.
Perl es el lenguaje más ampliamente usado en la programación CGI en el World Wide Web, ya que
ofrece una serie de ventajas que lo hacen ideal para construir interfaces entre el Web y otras
aplicaciones. Algunas de las ventajas que Perl ofrece son:
 Portabilidad de código en diversas plataformas.
 Existencia de operadores extremadamente robustos para manipular cadenas de
caracteres, así como funciones para tratar con datos binarios.
 Métodos simples para la construcción y manipulación de objetos definidos por el usuario.
17
 Ejecución de programas en base a interpretación.
 Facilidad para invocar comandos y funciones shell del sistema operativo.
 Habilidad para acceder variables de entorno.
Características y Funciones
Por lo general, un programa CGI se invoca desde el atributo ACTION de un formulario. Este
programa tiene por objetivo generar información dinámica a partir de los criterios especificados
por el usuario en los campos del formulario.
Las extensiones ODBC para Perl constan de dos archivos:
 ODBC.PLL: Es la extensión Perl para ODBC, escrita y compilada en Lenguaje C. Un archivo
con extensiones .PLL no es más que un .DLL, que será cargado dinámicamente por Perl
cada vez que se requieran los módulos o extensiones dentro de un escrito Perl.
 ODBC.PM : Archivo que provee al programador de una interfaz sencilla para hacer uso de
las funciones contenidas en ODBC.PLL.
Requerimientos del Sistema






Procesador Intel 486 o superior.
1 MB libre en disco duro.
16 MB en memoria RAM(mínimo).
Servidor Web Compatible con CGI 1.1
Base de Datos compatible con ODBC.
Todo Servidor Web que soporte CGI 1.1: Microsoft IIS 1.0 o superior, O’Reilly & Asocciates
WebSite, Emwacs, etc.
IsisWWW: Es una interfaz para publicar bases de datos Micro CDS/ISIS en el World Wide Web,
desarrollada por el grupo CDS/ISIS de la Universidad de Estudios Bibliotecarios y de Información,
de Stuttgart (Alemania).
Con IsisWWW es posible desarrollar una interfaz cliente/servidor completamente gráfica, a través
de formularios HTML, para interactuar con bases de datos ISIS en Internet e Intranets. Asimismo
se pueden realizar consultas a una base de datos ISIS desde Internet.
18
6. CONCLUSIONES
A través de los años, la tecnología ha ido mejorando y con ella la conectividad a la base de Datos,
tanto para aplicaciones escritorio como para aplicaciones Web.
Existen diferentes formas en que las aplicaciones se conectan a la base de Datos para realizar
transacciones y para la devolución de Información compatible con las tecnologías y lenguajes
existentes de programación web, tales como HTML, XML, Java,.net, perl, etc.
Las principales diferencias entre cada una de ellas radica, mas que todo en que tanto recurso
puede utilizar a la hora de conectarse a la aplicación o servidor que aloja la Base de Datos, la
compatibilidad con los API’S, los diferentes lenguajes de programación, las plataformas y los
diferentes navegadores.
Cada uno de estos conectores puede estar o no vinculado o inclinado a determinada tecnología o
plataforma, con sus correspondientes requisitos de instalación, sin embargo, la tecnología sigue
avanzando y presentándonos maneras de conectarse o resolver conflictos de compatibilidades.
19
7. BIBLIOGRAFIA
 http://es.wikipedia.org/wiki/OLE_DB
 http://livedocs.adobe.com/dreamweaver/8_es/using/wwhelp/wwhimpl/common/html/w
whelp.htm?context=LiveDocs_Parts&file=28_conn4.htm
 http://www.soloasp.com.ar/vertexto.asp?txt=18
 http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte21/cap21-3.html
 http://www.uca.edu.sv/investigacion/bdweb/tecnolog.html
20