Vous êtes sur la page 1sur 14

Bases de Datos en la WEB La Web es un medio para localizar, enviar y recibir informacin de diversos tipos, utilizando para esto

las bases de datos. En el mbito competitivo, es esencial ver las ventajas que esta va electrnica proporciona para presentar la informacin, reduciendo costos y el almacenamiento de la informacin, y aumentando la rapidez de difusin de la misma. Internet provee de un formato de presentacin dinmico para ofrecer campaas y mejorar negocios, adems de que permite acceder a cada sitio alrededor del mundo, con lo cual se incrementa el nmero de personas a las cuales llega la informacin. Alrededor de 14 millones de personas alrededor del mundo hacen uso de Internet, lo cual demuestra el enorme potencial que esta red ha alcanzado, con lo cual se puede decir que en un futuro no muy lejano, ser el principal medio de comunicacin utilizado para distintos fines. Pero, no slo es una va para hacer negocios, sino tambin una gran fuente de informacin, siendo ste uno de los principales propsitos con que fue creada. Una gran porcin de dicha informacin requiere de un manejo especial, y puede ser provista por bases de datos. En el pasado, las bases de datos slo podan utilizarse al interior de las instituciones o en redes locales, pero actualmente el Web permite acceder a bases de datos desde cualquier parte del mundo. Estas ofrecen, a travs de la red, un manejo dinmico y una gran flexibilidad de los datos, como ventajas que no podran obtenerse a travs de otro medio informativo. Con estos propsitos, los usuarios de Internet o Intranet pueden obtener un medio que puede adecuarse a sus necesidades de informacin, con un costo, inversin de tiempo, y recursos mnimos. Asimismo, las bases de datos sern usadas para permitir el acceso y manejo de la variada informacin que se encuentra a lo largo de la red En esta publicacin se presentan las diferentes herramientas que se utilizan hoy da para enviar y recibir informacin a travs del web, as como las aplicaciones que hacen dicha interfaz, las base de datos con la World Wide Web. SEGURIDAD La evaluacin de este punto es uno de los ms importantes en la interconexin de la Web con la base de datos. A nivel de una red local, se puede permitir o impedir, a diferentes usuarios el acceso a cierta informacin, pero en la red mundial de Internet se necesita de controles ms efectivos en este sentido, ante posible espionaje, copia de datos, manipulacin de stos, etc. La identificacin del usuario es una de las formas de guardar la seguridad. Las identidades y permisos de usuarios estn definidas en los Archivos de Control de Acceso. Pero la seguridad e integridad total de los datos puede conservarse, permitiendo el acceso a distintos campos de una base de datos, solamente a usuarios autorizados para ello. En este sentido, los datos pueden ser presentados a travs de la Web de una forma segura, y con mayor impacto en todos los usuarios de la red mundial. Para la integracin de la base de datos con la Web es necesario contar con una interfaz que realice las conexiones, extraiga la informacin de la base de datos, le d un formato adecuado de tal manera que puede ser visualizada desde un browser de la Web, y permita lograr sesiones interactivas entre ambos, dejando que el usuario haga elecciones de la informacin que requiere. BASE DE DATOS Orientacin de las Base de Datos en la actualidad En la actualidad, muchas instituciones se han dado cuenta de la importancia que el Web tiene en el desarrollo de sus potencialidades, ya que con ello pueden lograr una mejor comunicacin con personas o instituciones situadas en cualquier lugar del mundo. Gracias a la conexin con la red mundial Internet, poco a poco, cada individuo o institucin va teniendo acceso a mayor cantidad de informacin de las diversas ramas de la ciencia con distintos formatos de almacenamiento.

La mayor parte de informacin es presentada de forma esttica a travs de documentos HTML, lo cual limita el acceso a los distintos tipos de almacenamiento en que sta pueda encontrarse. Pero, en la actualidad surge la posibilidad de utilizar aplicaciones que permitan acceder a informacin de forma dinmica, tal como a bases de datos, con contenidos y formatos muy diversos. Las bases de datos estn presentes en numerosas aplicaciones, sobre todo en aquellas que manejan grandes cantidades de informacin que deben ser almacenadas y manipuladas de forma rpida y eficiente. Con la aparicin de Internet y de la World Wide Web, muchas aplicaciones existentes y una gran mayora de las de nueva aparicin se estn enfocando hacia su utilizacin en la red. Por ello surge la necesidad de aplicar esta nueva tecnologa a las bases de datos de manera que puedan ser accedidas a travs de Internet. Una de las ventajas de utilizar el Web para este fin, es que no hay restricciones en el sistema operativo que se debe usar, permitiendo la conexin entre si, de las pginas Web desplegadas en un browser del Web que funciona en una plataforma, con servidores de bases de datos alojados en otra plataforma. Adems, no hay necesidad de cambiar el formato o estructura de la informacin dentro de las bases de datos. Tipos de bases de datos Las bases de datos se pueden dividir en cuatro tipos bsicos: Bases de datos de fichero plano (o ficheros por bloques) Bases de datos relacionales Bases de datos orientadas a objetos Bases de datos hbridas

Las bases de datos de fichero plano consisten en ficheros de texto divididos en filas y columnas. Estas bases de datos son las ms primitivas y quizs ni tan siquiera merezcan considerarse como tales. Pueden ser tiles para aplicaciones muy simples, pero no para aplicaciones medianas o complejas, debido a sus grandes limitaciones. Las bases de datos relacionales son las ms populares actualmente. Su nombre proviene de su gran ventaja sobre las bases de datos de fichero plano: la posibilidad de relacionar varias tablas de datos entre s, compartiendo informacin y evitando la duplicidad y los problemas que ello conlleva (espacio de almacenamiento y redundancia). Existen numerosas bases de datos relacionales para distintas plataformas (Access, Paradox, Oracle, Sybase) y son ampliamente utilizadas. Sin embargo, tienen un punto dbil: la mayora de ellas no admite la incorporacin de objetos multimedia tales como sonidos, imgenes o animaciones. Las bases de datos orientadas a objetos incorporan el paradigma de la Orientacin a Objetos (OO) a las bases de datos. La base de datos est constituida por objetos, que pueden ser de muy diversos tipos, y sobre los cuales se encuentran definidas unas operaciones. Las bases de datos orientadas a objetos pueden manejar informacin binaria (como objetos multimedia) de una forma eficiente. Su limitacin suele residir en su especializacin, ya que suelen estar diseadas para un tipo particular de objetos (por ejemplo, una base de datos para un programa de CAD). Las bases de datos hbridas combinan caractersticas de las bases de datos relacionales y las bases de datos orientadas a objetos. Manejan datos textuales y datos binarios, a los cuales se extienden las posibilidades de consulta. Es una tecnologa reciente y an existen pocas en el mercado. BASE DE DATOS EN LA WEB El inters de las bases de datos en la web crece da a da debido a sus numerosas aplicaciones, siendo cada vez mayor el nmero de herramientas especficas para bases de datos en la web que aparecen en el mercado. Existen dos formas de enfrentarnos a las bases de datos en la web. 1.- Interfaces web que sirven como mediadores para llegar a la base de datos, para realizar consultas o modificaciones necesarias.

2.- Bases de datos estructuradas que deben ser auto descritas para los datos y cuyo lenguaje estndar es el XML que estructura la base de datos. En este caso los datos se encuentran en la web. A continuacin se detallan cada un de estas alternativas disponibles en la web. 1.- INTERFACES Web/DBMS Si hemos navegado algo por la web, es casi seguro que hemos utilizado una base de datos en la web; al buscar informacin sobre un tema, al consultar un catlogo de productos, al obtener el saldo de nuestra cuenta corriente o al firmar en un libro de visitas. Todas estas aplicaciones utilizan bases de datos, bien para recoger informacin, bien para distribuirla o para ambas cosas a la vez. Tradicionalmente en el Web se han utilizado documentos HTML estticos para los cuales se creaban las posibles respuestas ante requisiciones del cliente. Este mtodo requiere de un gran desarrollo de aplicaciones y de mantenimiento de las mismas. Al interactuar con las bases de datos, este proceso se complica an ms. Una aplicacin que posibilita interconectar al Web con una base de datos tiene muchas ventajas, adems de que las funciones que cumplen actualmente los Servidores Web y las herramientas de desarrollo de aplicaciones Web, hacen ms fcil que nunca la construccin de aplicaciones ms robustas. Tal vez el mayor beneficio del desarrollo de estas aplicaciones en el Web sea la habilidad de que sean para mltiples plataformas, sin el costo de distribuir mltiples versiones del software. Tambin han aparecido bibliotecas que incluyen motores propios de servidor que corren de forma conjunta con el Servidor Web, lo cual facilita el desarrollo de nuevas aplicaciones. Cada una de las interfaces para comunicar al Web con bases de datos, ha sido creada basndose en una tecnologa de integracin especial, a travs de procesos de interconexin especiales, que sern descritos en el siguiente apartado. Cuando se utiliza una interfaz para lograr la integracin del Web con cierta base de datos, se puede verificar que los procesos seguidos varan, dependiendo de la tecnologa que se est utilizando. Entre estas tecnologas se tienen las siguientes. 1.1 Funcionamiento de la Base de Datos Para realizar una requisicin de acceso desde el Web hasta una base de datos no slo se necesita de un browser del Web y de un Servidor Web, sino tambin de un software de procesamiento (aplicacin CGI), el cual es el programa que es llamado directamente desde un documento HTML en el cliente. Los CGI reciben datos transferidos desde un navegador Web mediante un servidor de HTTP y los convierten a un formato que la base de datos pueda entender. La informacin convertida se transfiere a la interfaz de la base de datos y esta la ejecuta. Los resultados se devuelven al software de procesamiento, el cual los convierte a un formato de manera que el navegador los pueda desplegar. Una aplicacin CGI no puede trabajar solo, requiere de un tipo de canal para hacer contacto con la base de datos, este canal lo proporciona la interfaz de la base de datos, el cual es un software especial que suministra el proveedor. Los CGI se comunican con la interfaz, la cual se pone en contacto con la base de datos. 1.2 Lenguaje SQL Como la necesidad de acceder a bases de datos desde el Web se ha incrementado, han sido creadas tambin interfaces que manipulan sus escritos para procesar la informacin, teniendo como punto comn la ejecucin de sentencias SQL para requerir datos a la base. El lenguaje SQL, siglas que provienen de Structured Query Language (Lenguaje de Consulta Estructurado) es un lenguaje de bases de datos que pretende ser un lenguaje comn para las bases de datos relacionales. La prctica totalidad de ellas es capaz de procesar consultas en SQL. SQL consta de dos partes: el DDL o Data Definition Language (Lenguaje de Definicin de Datos) y el DML o Data Manipulation Language (Lenguaje de Manipulacin de Datos). Algunas de las herramientas para el acceso a bases de datos en la web utilizan el lenguaje SQL para la consulta

o modificacin de los datos. Esto permite su uso con distintos sistemas gestores de bases de datos, siempre que estos sean capaces de procesar sentencias SQL. 1.3 El Common Gateway Interface (CGI) Los CGI son programas que se ejecutan en el servidor por peticin del navegador de un usuario y permiten que se genere una pgina web de forma dinmica. Las pginas web puras (archivos HTML) son archivos de texto y por tanto estticos. Sin embargo, si en lugar de pedir una pgina web el navegador ejecuta un programa, ste puede generar la pgina "al vuelo" y decidir en el momento como va a ser la pgina. Por ejemplo, imagine una pgina web que muestre la hora como texto. Est claro que no se puede poner la hora con el editor de pginas web, ya que cada vez que alguien vea la pgina la hora ser distinta. La solucin es crear un programa que se ejecute cada vez que alguien quiera ver la pgina. El programa genera la pgina web en el momento en que se ejecuta y as coloca la hora correcta. Por ello los CGI aaden dinamismo a las pginas web. Actualmente, sta es la solucin que ms se est utilizando para la creacin de interfaces Web/DBMS. Fue probada por primera vez en el servidor NCSA. Se ha comprobado que si el Servidor Web recibe un URL con una llave, para devolver un documento HTML como respuesta, tendr que cargar el servicio (programa) que le indique las variables de ambiente y de la forma HTML. La mayora de las veces dicha llave es el "cgi-bin". Los programas CGI son de doble sentido. Los datos pueden transferirse al programa CGI para su procesamiento, al igual los programas CGI pueden devolver informacin al servidor Web. Con esto la informacin introducida por el usuario puede afectar el comportamiento del programa CGI, y los resultados devueltos por el programa son resultado directo de lo que introduce el usuario. En algunos casos los programas CGI se ejecutan al cargar la pgina y los resultados se despliegan como parte de la misma. Entre las ventajas de la programacin CGI, se tiene su sencillez, ya que es muy fcil de entender, adems de ser un lenguaje de programacin independiente, ya que los escritos CGI pueden elaborarse en varios lenguajes. Tambin es un estndar 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 aplicacin 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 a 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 requisicin. Adems, no existe un registro de el estado del servidor, sino que todo hay que hacerlo manualmente. El tener acceso a una base de datos a travs de un programa CGI tiene una metodologa propia, comnmente el usuario hace clic sobre un botn predeterminado o sobre un vnculo, en este momento el navegador enva una solicitud de ejecutar el programa CGI al servidor Web, el servidor Web revisa la configuracin y los archivos de acceso para asegurarse que se cuenta con el permiso de ejecucin del programa CGI y se asegura de que este exista , cualquier resultado producido por el programa CGI se devuelve al navegador Web que despliega el resultado. Los programas CGI como interfaces para acceder a bases de datos. La Web posee mecanismos para que el usuario ingrese datos en una pgina (por ejemplo el nmero de tarjeta de crdito), estos son recibidos por el servidor, que inmediatamente los pasa a un programa preparado para intercambiar datos segn las normas de interfaz CGI. Este programa, puede estar escrito en cualquier lenguaje (incluso puede ser compilado o interpretado), pero la nica forma de interactuar con el usuario es a travs de la pgina web. Por esta razn la interaccin no es inmediata (como s ocurre en Java); por ejemplo si un usuario ingresa un dato errneo, el mensaje de error ser una nueva pgina generada despus de que el usuario enve todos los datos requeridos en el formulario. Recuperacin de informacin de una bases de datos

Cuando alguien usa un navegador Web para acceder a una base de datos hay varios componentes que intervienen para transferir la consulta del usuario a la base de datos y devolver los resultados al navegador, la accin se desarrolla de la siguiente manera: El usuario llama a un programa gateway que utiliza CGI, haciendo clic en un hipervnculo u oprimiendo un botn del formulario. El navegador rene toda la informacin escrita por el usuario para enviarla al programa CGI.

El navegador contacta al servidor de HTTP en la mquina donde reside el programa CGI, pidindole que localice a este ltimo y le transfiere la informacin. El servidor de HTTP corrobora si la mquina solicitante tiene autorizacin de acceso al programaCGI.

Si el usuario tiene acceso, el servidor de HTTP localiza el programa Gateway y transfiere a este la informacin del navegador Web. Se ejecuta el programa Gateway. El proceso Gateway convierte la informacin recibida a un formato que la base de datos sea capaz de entender. El Gateway usa el mdulo de la base de datos para transferir la consulta a la interfaz de la base. La interfaz de la base de datos analiza la sintaxis de la consulta para asegurar que sea precisa. Si la interfaz encuentra un error de sintaxis en la consulta, se enva un mensaje de error al programa Gateway.

El mensaje de error se enva al servidor de HTTP, el cual lo transfiere al navegador Web para que este lo despliegue al usuario. Si no hay error, la interfaz enva la consulta a la bases de datos. La base de datos atiende la consulta y devuelve los resultados al programa gateway a travs de la interfaz.

El programa gateway formatea los resultados y los enva al servidor, por medio del CGI, para su envo al navegador Web. El navegador Web despliega los resultados

Hacer inserciones, actualizaciones y eliminaciones requiere de un procedimiento ms complejo que el necesario para hacer simples consultas. El cdigo de insercin debe verificar si existen los datos en la base de datos, con el fin de evitar duplicidad en la informacin, el cdigo de actualizacin debe asegurarse que la informacin exista, antes de modificarla, en caso contrario debe originarse un error. Las acciones de eliminacin y edicin debe de asignarse a un grupo reducido y confiable para evitar la eliminacin de datos necesarios. Para procesar algo mas que una simple consulta en un ambiente de esta naturaleza, es necesario algn tipo de control de acceso como lo pueden ser el comparar el identificador de conexin del usuario contra una lista de usuarios autorizados para determinada accin, asignar a cada tipo usuario un identificador de conexin y asignar a cada tipo nivel un nivel de acceso basndose en las funciones que tienen permitidas o utilizar la autenticacin de clave de acceso de la base de datos destino para validar los niveles de acceso a los usuarios. En definitiva, el mtodo que utilice depende de como planee utilizar el programa de gateway (CGI). La siguiente ilustracin muestra cmo intercambian informacin un explorador, un servidor y una aplicacin CGI utilizando CGI. En principio los CGI se pueden realizar con cualquier lenguaje de programacin, ya que pueden ser ejecutables (archivos .exe). Sin embargo, lo ms recomendable es utilizar un lenguaje de script con facilidades para realizar CGI. Nos referimos al Perl.

Qu es el lenguaje Perl? Es un lenguaje de ordenadores interpretado. Su nombre significa "perla" y se supone que es el acrnimo de Practical Extraction and Report Language (lenguaje prctico para extraccin e informes). Al ser interpretado, los programas se denominan scripts y son archivos de texto. El Perl es el lenguaje ms usado para programar CGI's porque al ser interpretado es ms 'portable', y porque sus caractersticas lo hacen ideal para ello. La ventaja del Perl es que por su forma y por las bibliotecas y utilidades de que dispone, es ideal para la realizacin de CGI's. Es ms, a ello debe el enorme auge que ha tenido ltimamente, aunque en un principio fue diseado como lenguaje de propsito general. 1.4 Pginas ASP Introduccin al ASP ASP(Active Server Pages) o lenguaje de pginas activas de Microsoft estara englobado dentro de los lenguajes ISS (Include Server Side) de 2 generacin, es decir, que ASP es una evolucin de los CGIs (Common Gateway Interface). ASP no define un lenguaje de programacin con sus sentencias de control, sus estructuras de almacenamiento, etc, sino que define una serie de objetos de servidor, los cuales tienen una serie de mtodos que podremos utilizar para cosas como acceso a base de datos, lectura de ficheros, etc. ASP se ayuda de dos lenguajes de script, como son JavaScript y VBScript para implementar toda la parafernalia necesaria para que se vea ASP como un lenguaje de programacin. Es por ello que la primera lnea de cdigo de una pgina ASP deber de indicar el lenguaje de script con el que nos vamos a ayudar. Concepto de pgina ASP Las pginas ASP se caracterizan por tener en un mismo archivo de extensin ASP cdigo de script que se ejecuta en el servidor y cdigo HTML que forma la pgina web. Es decir, en un mismo archivo se encuentra el HTML (apariencia de las pginas) y el cdigo de la aplicacin a ejecutar en el servidor. Todo el sistema ASP no es ms que una DLL del tipo ISAPI, que es invocada automticamente para los archivos cuya extensin sea .asp. La biblioteca ASP preprocesa el archivo ASP interpretando su cdigo como un script a ejecutar en el servidor. Sin embargo ella no interpreta directamente el cdigo, sino que en funcin del lenguaje en el que est escrito, invoca a otra DLL que se encarga de ejecutar el script. Despus recoge la salida y se la enva al servidor web. A algunos programadores esto les puede parecer confuso y poco estructurado. De hecho, parece preocupante que un webmaster diseador grfico y un programador de aplicaciones de bases de datos tengan que trabajar ambos sobre el mismo archivo. Sin embargo, esto es slo una apariencia. Una reflexin ms profunda nos revela que la pgina ASP engloba tanto a las pginas web como a los scripts CGI. En efecto, una ASP puede consistir slo en cdigo HTML (y entonces es lo mismo que una pgina web normal) o slo en cdigo ejecutable (lo mismo que un CGI). Por tanto la mezcla de cdigo y HTML es opcional, pero muy utilizada por resultar prctica (por ejemplo, un formulario que se llama a s mismo). Concepto de aplicacin ASP Una pgina ASP no es slo un script. Se denomina aplicacin ASP al conjunto de pginas ASP, pginas web, archivos grficos, etctera, dispuestos en un directorio y sus subdirectorios. Todo este conjunto de scripts y datos es el equivalente en la web a la aplicacin tradicional que al final se compila en un ejecutable. Como funciona realmente ASP

El esquema de funcionamiento de ASP sera como el de la figura que tenemos a continuacin. Una maquina cliente realiza una peticin de una pgina ASP. Esta peticin llega a una maquina servidor la cual interpreta el cdigo de esa pgina ASP. Dicho cdigo puede tener accesos a ficheros o bases de datos (Base de Informacin). El resultado de interpretar la pgina ASP es una pgina HTML, la cual se le enva al usuario. Es decir, el usuario no llega a ver el cdigo ASP, sino que ve el resultado de interpretar dicho cdigo: una pgina HTML. En conclusin podramos decir que una aplicacin en ASP tiene como objetivo disear una pgina web. Todas las salidas de informacin que se realicen en una pginas ASP sern de cdigo HTML o texto. Qu ventajas y desventajas tiene el ASP respecto a los CGI? Entre las ventajas podemos destacar: Se puede elegir el lenguaje de programacin de entre estos tres: JavaScript, Visual Basic Script y PerlScript. Incluso se pueden tener scripts en distintos lenguajes dentro de la misma pgina ASP. El lenguaje escogido vale con cualquier navegador, ya que se trata de cdigo que se ejecuta en el servidor. Al navegador slo le llega HTML. Se pueden utilizar componentes del lado de servidor. Esto permite programar al estilo VisualBasic creando objetos y utilizando sus mtodos y propiedades. Se puede acceder a bases de datos con objetos recordset de un modo muy parecido a como se hace en Visual Basic. Tiene persistencia de variables en memoria (entre distintas visualizaciones de pginas web) que se pueden asociar a cada sesin de usuario o a la aplicacin en su conjunto. Esto resuelve de forma elegante uno de los mayores problemas de la programacin en la web: el servidor web no tiene memoria entre la visualizacin de una pgina web y la siguiente. En cuanto a las desventajas, no tiene ninguna. Los partidarios del Perl pueden seguir utilizando dicho lenguaje al 100% (incluyendo bibliotecas) y aprovechar las nuevas caractersticas del ASP, sin ms que utilizar como lenguaje de programacin el PerlScript. 1.5 Interfaz de Programacin de Aplicaciones (API) Es un conjunto de rutinas, protocolos y herramientas para construir aplicaciones de interfaz. Una buena API hace ms fcil el trabajo de desarrollo de un programa, ya que debe proveer todos los bloques para construirlo. El programador lo nico que hace es poner todos los bloques juntos. API est diseado especialmente para los programadores, ya que garantiza que todos los programas que utilizan API, tendrn interfaces similares. Asimismo, esto le facilita al usuario aprender la lgica de nuevos programas. Cuando se realiza una requisicin, el servidor llamar al API, brindando la ventaja de disponer de una mayor cantidad de servicios. 1.6 Interfaz de Programacin de Aplicaciones del Servidor Internet (ISAPI) Es la interfaz propuesta por Microsoft como una alternativa ms rpida que el CGI, y ya 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 informacin dentro de una base de datos, o intercambia informacin con otro software localizado en el servidor. Los programas escritos usando la interfaz ISAPI son compilados como bibliotecas de enlace dinmico (DLL - Dynamic 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 ms rpido que las aplicaciones CGI, debido a que requieren menos tiempo de uso de CPU al no iniciar procesos separados.

Uno de los programas ISAPI ms usados es el HTTPODBC.DLL que se usa para enviar y/o devolver informacin hacia y desde las bases de datos, a travs de ODBC. Adems, ISAPI permite realizar un procesamiento previo de la solicitud y uno posterior de la respuesta, con lo cual manipula la solicitud/respuesta HTTP. Los filtros ISAPI pueden utilizarse para aplicaciones tales como autenticacin, acceso o apertura de sesin. 1.7 Java, JDBC y JavaScript Java ofrece un ambiente de programacin muy sencillo, robusto, dinmico, de propsito general, orientado a objetos y mltiples plataformas, creado por Sun MicroSystems. Es tanto un compilador como un lenguaje intrprete. El cdigo fuente de Java es convertido en instrucciones binarias simples, y compilado con un formato universal. El Compilador realiza todas las actividades de un procesador real en un ambiente virtual ms seguro. instrucciones, crea y manipula informacin, carga y hace referencia a bloques de cdigo nuevos. Es decir, ejecuta

El Intrprete, que es pequeo y muy til, es capaz de ser implantado en cualquier forma que se desee para un sistema operativo particular. Este puede correr como una aplicacin independiente, o como una parte de otro software, tal como el Web Browser. El concepto de Java es diferente al de CGI, ya que el CGI se ejecuta en el servidor, mientras que Java se ejecuta en el cliente. Procesamiento Cliente/Servidor Por lo general, las aplicaciones Web son procesadas completamente en el lado del servidor, lo cual no es precisamente lo ms apropiado, ya que significa un uso excesivo de memoria, manteniendo al usuario en la espera mientras termina de ejecutarse. Pero los browser Java (del lado del usuario) pueden ejecutar aplicaciones, y no slo desplegar documentos HTML, poniendo a correr el proceso en el lugar apropiado. Las aplicaciones clsicas proveen de informacin acerca de los tipos de formato (tipos MIME). Los browser del Web rpidos sern capaces de aprender cmo tratar con nuevos protocolos y dar formato dinmicamente a los datos. Conectividad de Bases de Datos de Java (JDBC) Se considera el primer producto estndar de Java con DBMS, creado y ofrecido por primera vez en marzo de 1996. Crea una interfaz con un nivel de programacin que le permite comunicarse con las bases de datos mediante un concepto similar al de componentes ODBC, el cual se ha convertido en el estndar que se utiliza en computadoras personales o en redes locales. El estndar de JDBC est basado en un nivel de interfaz con instrucciones SQL X/Open, que es bsicamente lo mismo que en ODBC. Las clases de objetos para iniciar la transaccin con la base de datos, estn escritas completamente en Java, lo cual permite mantener la seguridad, robustez y portabilidad de este ambiente. El puente JDBC-ODBC manipula la traduccin de llamadas JDBC a aquellas que puedan ser entendidas por el cliente ODBC a un nivel de lenguaje C. JavaScript Es un API programable que permite crear escritos de eventos, objetos y acciones, bajo cualquier plataforma, que se alojan dentro de un documento HTML. Dicho lenguaje es propiedad de Netscape. Gracias a que JavaScript es parte de la conexin en vivo, se puede usar para crear interacciones entre documentos HTML, Plug-ins (aplicaciones que corren dentro del browser del Web) y Java.

Mediante el uso de JavaScript se pueden enviar respuestas ante una variedad de eventos, objetos y acciones, permitiendo cambiar imgenes o activar sonidos ante determinados eventos, tales como entrar o salir de una pgina, presionar el ratn, etc. Para la interconexin de una base de datos con el Web, se pueden construir escritos CGI en lenguajes de programacin adecuados, tales como C o Perl. Estos escritos se mantendrn cargados en memoria a la espera de requisiciones o llamadas del servidor, y realizando las conexiones con la base de datos. Algo un poco ms complejo es crear un servidor personal, tal como APACHE, y agregarle los servicios que se consideren necesarios, a travs de mdulos. Para ello, se puede obtener el cdigo fuente de los servidores ya existentes y que se encuentren disponibles en Internet, tal como el anteriormente mencionado, luego compilarlo y modificarlo segn conveniencias 1.8 Formularios WEB Los formularios son plantillas que permiten la creacin de documentos HTML con peticiones de datos. Es decir, dentro de una pgina Web se puede solicitar informacin al visitante y procesarla. En un formulario se puede solicitar diferentes campos, cada uno de los cuales quedar asociado a una variable. Una vez se hayan introducido los valores en los campos, el contenido de estos ser enviado a la direccin URL donde se tiene el programa que pueda procesar las variables. Para poder realizar este ltimo paso es necesario realizar un programa externo en algn lenguaje de programacin como PERL, C++ o Visual Basic. Este programa externo se llama CGI. 1.9 Aplicaciones de una Base de Datos en la Web Aplicaciones ms importantes Entre las aplicaciones ms importantes de una base de datos en la web se pueden citar las siguientes: Comercio electrnico Servicios al cliente (p. ej. seguimiento de paquetes postales) Servicios financieros Bsqueda de informacin Acceso remoto a bases de datos Bases de datos compartidas (intranets) Creacin de documentos HTML personalizados (sobre la marcha) Distribucin de multimedia Seguimiento de visitantes

Componentes de una aplicacin de bases de datos Una base de datos en la web consta de los siguientes componentes: Servidor web Servidor de aplicacin Cliente web Programa CGI (opcional) Base de Datos

1.10 Publicacin de bases de datos en la web Las consideraciones a tener en cuenta a la hora de desarrollar una aplicacin de bases de datos en la web no son en principio distintas de las necesarias para cualquier otra aplicacin (alcance del proyecto, experiencia del programador, etc.). Por otra parte, a la hora de publicar una base de datos en la web se pueden adoptar varios enfoques, segn el grado de complejidad de la aplicacin. De esta manera, las herramientas para la publicacin de una base de datos en la web se pueden clasificar en tres categoras:

Herramientas para la publicacin de datos. Herramientas para el desarrollo de bases de datos. Herramientas especficas para el desarrollo de bases de datos web.

Veamos cada una de ellas con detalle. Herramientas para la publicacin de datos Estas herramientas resultan interesantes cuando la base de datos es pequea o su contenido no cambia muy frecuentemente. Entre ellas podemos citar las siguientes: Bases de datos de ficheros por bloques Fusin de datos con plantillas HTML (mail-merge) Asistentes para publicacin de datos en la web (Access: HTML esttico)

Las bases de datos de ficheros por bloques ya han sido comentadas antes. Tienen severas limitaciones, pero si la cantidad de datos no es muy grande pueden ser aceptables. Su gran ventaja es que puede construirse un programa CGI para acceder a la base de datos utilizando cualquier lenguaje que proporcione acceso a ficheros de texto. Por ejemplo el lenguaje C, cuya portabilidad permite desarrollar la aplicacin para distintas plataformas, como un PC y una mquina UNIX. Como opcin interesante la base de datos puede crearse exportando en modo texto una base de datos relacional, lo cual simplifica el mantenimiento de los datos. Cada vez que se produzca una modificacin de los datos se generar una nueva versin de la base de datos de fichero por bloques lista para su uso. Otra posibilidad es fusionar una plantilla HTML preexistente con datos exportados de una base de datos. La plantilla proporciona el formato del documento e incluye unos campos que se rellenan con los datos de la base de datos. El documento final se crea mediante la opcin de fusin (mail merge) de un procesador de textos. El proceso paso a paso es el siguiente: Crear la base de datos con un gestor de bases de datos relacional Exportar los datos en un formato vlido para el procesador de textos Crear la plantilla con el procesador de textos Hacer el mail merge de la plantilla con los datos exportados Transferir el resultado a una pgina web, mediante un asistente o cortando y pegando

Este proceso habr que repetirlo cada vez que se modifique la base de datos, por lo cual esta opcin ser interesante cuando los datos sufran pocas modificaciones. Tiene la ventaja de su gran simplicidad, por lo que puede ser una opcin aceptable en casos concretos.

Herramientas para el desarrollo de bases de datos. Para tener una aplicacin de bases de datos potente en la red hay que recurrir a la programacin CGI. Aunque estn surgiendo herramientas especficas de bases de datos en la web, y en el futuro acabarn por imponerse, las aplicaciones actuales de bases de datos en la web utilizan la programacin CGI. En esta aplicaciones podemos distinguir dos componentes fundamentales: Formulario HTML Programa CGI

El formulario HTML permite introducir en la pgina web los datos para iniciar la consulta, y el programa CGI se encarga de recibir esos datos, interpretarlos, realizar la consulta a la base de datos y genera una pgina web con el resultado de la consulta. Un aspecto importante es la eleccin del lenguaje de programacin para el programa CGI. Esta eleccin est condicionada por los mismos factores que influyen en cualquier otro proyecto:

Disponibilidad de herramientas Tipo y nmero de las bases de datos Plataformas en las que debe funcionar la aplicacin Experiencia del programador Alcance del proyecto

El acceso a la base de datos desde el programa CGI se puede hacer de varias formas: Consultas SQL: es el procedimiento ms comn. ODBC/JDBC: API de programacin proporcionada por los gestores de bases de datos. Procedimientos almacenados: son instrucciones de bases de datos especficas de un Gestor de Bases de Datos concreto. Proporcionan rapidez, pero limitan la aplicacin al uso de dicho gestor.

Una alternativa a la creacin de nuestros propios programas CGI es el uso de herramientas que generan automticamente estos programas. Entre estas herramientas podemos citar los asistentes avanzados para publicacin de datos en la web que ofrece Microsoft Access. Estos asistentes proporcionan dos mtodos para la publicacin de bases de datos en la web, como son el HTX/IDX dinmico (basado en el uso de plantillas) y el ASP dinmico. En el mtodo HTX/IDC dinmico los ficheros .HTX contienen cdigo HTML no estndar. Estos archivos tienen un archivo .ITX asociado que contiene un mandato SQL que recupera los datos de la base de datos y los muestra con el formato indicado en el archivo de plantilla HTX. El mtodo ASP dinmico permite obtener pginas ms vistosas, ya que trabaja con controles ActiveX integrados. Estos controles se comunican directamente con el servidor web, puenteando al HTML. El problema es que estos controles slo son visibles si se utiliza el navegador web de Microsoft, el Internet Explorer, lo cual limita el uso de este mtodo. Ambos mtodos requieren la presencia de un servidor web de Microsoft, como el Servidor Personal de Web en Windows 95 o el Internet Information Server (IIS) en Windows NT. 1.11 Herramientas especficas para el desarrollo de bases de datos web Recientemente estn surgiendo herramientas diseadas expresamente para el desarrollo de bases de datos web. Estas herramientas permiten generar consultas de cierta complejidad a bases de datos grandes sin necesidad de realizar tareas de programacin, o restringiendo esta tarea a su mnima expresin. Es por ello que se estn haciendo muy populares, y an lo sern ms en el futuro. Una herramienta de desarrollo de bases de datos web debe tener cinco funciones: Estructuracin de los datos y tablas Creacin del formulario HTML Creacin de los programas CGI Generacin automtica de un documento de respuesta Mantenimiento de los datos

Es posible que la herramienta que tengamos no haga todas estas operaciones, en cuyo caso deberemos complementarla con otras herramientas o hacerlo manualmente. Estas herramientas suelen disponer de unas extensiones al lenguaje HTML mediante las cuales se realiza la consulta a la base de datos y se formatea la salida de los resultados obtenidos en dicha consulta. Criterios para la eleccin de un mtodo de publicacin de datos en la web En los puntos anteriores se han visto diferentes mtodos para la publicacin de datos en la web. Cada uno tiene sus ventajas y sus inconvenientes, que habr que sopesar antes de elegir cul de ellos es el que mejor se adapta a nuestra aplicacin particular. En concreto, habr que tener en cuenta los siguientes factores: Plataforma Servicios ofrecidos por el proveedor de acceso a Internet Nivel de conocimientos de programacin Tamao de la base de datos

Costo

Una vez desarrollada la aplicacin, sta debe ser mantenida, lo cual tambin debe tenerse en consideracin. 1.12 Base de Datos Web con tecnologa Microsoft El sistema de acceso a bases datos a travs de la web utilizando la tecnologa Microsoft, se denomina ADO (ActiveX Data Objects). DSN (Data Source Name): Es un identificador nico de la base de datos en el sistema. Al definir un DSN se especifican tanto la ruta completa del archivo de base de datos como el controlador adecuado a la misma (MSAccess, FoxPro, etc). Una vez creado, es todo lo que se necesita saber acerca de la base de datos para poder abrirla, consultarla, modificarla, etc. ADO (ActiveX Data Objects): Es una familia de objetos componentes dedicados a facilitar el acceso a bases de datos. Todo el sistema ADO se basa en una serie de objetos cuyas propiedades y mtodos hay que utilizar. Estos objetos estn registrados en el sistema, sin embargo no estn predefinidos. Es decir, hay que crearlos utilizando Server.CreateObject que representa una conexin a una base de datos. Este es el primer objeto que se debe crear para poder conectar con la base de datos.

1.13 Internet Information Server (IIS) Con el servicio WWW y los controladores ODBC que proporciona Internet Information Server, puede: Crear pginas Web con informacin contenida en bases de datos. Insertar, actualizar y eliminar informacin de la Base de datos segn la entrada del usuario en una pgina Web. Ejecutar otros comandos del Lenguaje de consulta estructurado (SQL). Funcionamiento del Conector de bases de datos de Internet (IDC) En el siguiente diagrama se muestra conceptualmente el acceso a bases de datos desde Internet Information Server. Los exploradores de Web (como Internet Explorer o los exploradores de otros fabricantes como Netscape) remiten peticiones al servidor Internet usando HTTP. El servidor Internet responde con un documento en formato HTML. El acceso a las bases de datos se realiza mediante un componente de Internet Information Server llamado Conector de bases de datos de Internet (IDC). El Conector de bases de datos de Internet, Httpodbc.dll, es un programa DLL/ISAPI que utiliza ODBCpara el acceso a las bases de datos. 2.- BASES DE DATOS XML (BD ESTRUCTURADAS) Una base de datos XML no es diferente de cualquier documento XML, ya que XML permite definir cualquier tipo de informacin. La diferencia entre documentos XML que tratan diversos tipos de contenidos, no es ms que la distinta organizacin de sus elementos, gestionados a travs de la coleccin de etiquetas adecuadas a cada caso. XML, el estndar de Internet para intercambio de informacin, fue diseado para publicar tipos de datos independientemente de la plataforma empleada, permitiendo as la interoperabilidad y el comercio electrnico. En las pginas web, XML tambin separa el contenido de la presentacin y, de este modo, permite un sistema estndar para definir e intercambiar datos entre aplicaciones y bases de datos Tradicionalmente, desde una base de datos se podan solicitar dos clases de XML: XML esttico almacenado dentro de la base de datos y XML dinmico generado a partir de los datos contenidos en la base de datos. Introduccin al XML

XML (eXtended Markup Language) es un lenguaje para la definicin de lenguajes de etiquetas, lo que llamaramos "metalenguaje". XML va a indicar como pueden ser creados otros lenguajes por marcas, define las gramticas de otros lenguajes. Este lenguaje es relativamente joven, eso tendiendo en cuenta que la versin 1.0 es una recomendacin del World Wide 1 Web Consortium (W3C) de Febrero de 1998. Si bien las ideas no son tan nuevas, ya que XML se apoya en la definicin del SGML que es un estndar ISO desde los aos 80. Ventajas del XML XML es un lenguaje independiente de la plataforma sobre la que se trabaje. Es UNICODE, lo que hace que pueda ser utilizado en mltiples lenguajes. Independencia de la informacin con respecto a la representacin.

Cuando se incluye un cambio en el documento no supone un problema para su interpretacin, ya que siempre hay que leer el DTD. XML sigue un estndar. Los datos solo dependen de los datos en si, no de su formato.

Para acceder a la informacin se puede utilizar una representacin a alto nivel y no a bajo nivel como con el HTML. Sustituye XML al HTML? La respuesta a esta pregunta es no. HTML es un lenguaje destinado al diseo de pginas Web y que ha sido definido mediante el metalenguaje SGML. XML nos permite la definicin de lenguajes para el intercambio de informacin. Al ser XML un subconjunto del SGML, podramos definir el lenguaje HTML mediante XML. Si bien cubriramos una serie de inconsistencias como: El uso o no de comillas en los atributos

Que las etiquetas deben de tener un cierre y un inicio, no pudindose dejar solas. O bien, si usamos una etiqueta sola, esta debe de ponerse en la forma . Con la correccin de estas inconsistencias es con lo que aparece el lenguaje XHTML. CONCLUSIN Tan solo algunos aos atrs, las bases de datos slo podan utilizarse en el interior de las empresas o en redes locales, pero actualmente el Web ha permitido acceder a las bases de datos desde cualquier parte del mundo. Sabemos que los datos estn en todos lados actualmente, en PCs de escritorio, en redes locales, en Internet. Pero para que esta informacin puedan obtenerlas los usuarios o clientes es necesario que exista un enlace, usando un sistema de administracin de bases de datos. Estas facilidades le permite a los usuarios estructurar sus datos para encontrar fcilmente respuestas, compartir fcilmente informacin y construir soluciones que ayuden a todos a tomar mejores decisiones de negocio. En este trabajo hemos visto distintas herramientas que tienen como funcin establecer una comunicacin entre la base de datos y el web. Para la integracin de estas bases de datos con el Web es necesario contar con una interfaz que realice las conexiones, extraiga la informacin de la base de datos, le d un formato adecuado de tal manera que puede ser visualizada desde un browser del Web, y permita lograr sesiones interactivas Para efectuar una requisicin de acceso desde el Web hasta una base de datos no slo se necesita de un browser del Web y de un Servidor Web, sino tambin de un software de procesamiento (aplicacin CGI), el cual es el programa que es llamado directamente desde un documento HTML en el cliente. Dicho programa lee la entrada de datos desde que

provienen del cliente y toma cierta informacin de variables de ambiente. El mtodo usado para el paso de datos est determinado por la llamada CGI. Las aplicaciones del CGI son numerosas: herramientas de bsqueda, formas de registro, libros de visitas, contadores de accesos, sistemas de bases de datos, grupos de discusin, personalizacin de pginas, tiendas y catlogos electrnicos, y ms. La gran mayora de las aplicaciones que existen en la WWW actualmente, dependen exclusivamente del CGI. Uno de los usos ms comunes de un script CGI es enviar por correo datos a una direccin de e-mail. En resumen una base de datos en la web debe constar de un; Servidor web, Servidor de aplicacin, Cliente web, Programa CGI (opcional), Base de Datos.

Vous aimerez peut-être aussi