1.06k likes | 1.79k Views
Gestores de Base de Datos . 2. Funcionamiento ao-2005. La teora solo est como soporte para consultar lo visto en las prcticas. Por si hay dudas!. En otras asignaturas os haris expertos en diseo de bases de datos.No se memoriza nada, solo se entiende lo que se explica en clase, se complemen
E N D
1. Gestores de Base de Datos
2. Gestores de Base de Datos 2 Funcionamiento año-2005 La teoría solo está como soporte para consultar lo visto en las prácticas. ¡Por si hay dudas!. En otras asignaturas os haréis expertos en diseño de bases de datos.
No se memoriza nada, solo se entiende lo que se explica en clase, se complementa con este tema o mejor con la ayuda del propio Access (Microsoft siempre nos supera).
Me interesa el conocimiento profundo del Access a nivel de usuario.
Intentaremos tratar aspecto de gestión de usuarios, acceso multiusuario, compartir información con otras herramientas, acceso desde navegadores a las bases de datos, junto a lo visto otros años, pero partiendo de una base de datos ya diseñada. De hecho, con los asistentes actuales siempre es posible esto.
En resumen: ¿Sería posible resolver casi cualquier problema que se me plantee en la empresa con esta herramienta?
3. Un gestor de base de datos permite crear y mantener información en la memoria del ordenador, y es capaz de encontrar en ellos el dato que se le solicite.
Un sistema de gestión de base de datos (SGBD o DBMS) es un software que permite introducir, organizar y recuperar la información de las bases de datos; en definitiva, administrarlas.
Existen diversos tipos aunque el modelo relacional es el seguido por casi todos los gestores de bases de datos para PC´s.
El modelo relacional (SGBDR) es un software que almacena los datos en forma de tablas. Un gestor de bases de datos
4. Un SGBDR realiza las funciones:
Definición de tablas y relaciones
ayuda a la introducción, modificación y borrado de datos
realización de consultas
realización de formularios
realización de informes
Creación de páginas web para acceso a la información
y módulo para crear programas o aplicaciones
Tienen la función de almacenamiento, recuperación y mantenimiento de información.
5. Ejemplo de trabajar con ficheros
6. 2. Utilización Todas las organizaciones deben tener un sistema que procese la mayoría de sus datos. Para manejar mucha información se puede desarrollar software a medida o bien usar sistemas de gestión de bases de datos.
Las bases de datos estandarizan el almacenamiento de los datos y en el acceso a los mismos.
Su ámbito de aplicación abarca a cualquier colectivo que maneje datos. Se utilizarán para automatizar la información registrada en ficheros manuales.
La dificultad reside en pasar toda esa información del papel al soporte magnético.
7. Los usuarios no técnicos podrán manejar la información de forma sencilla y eficiente.
Los programadores de aplicaciones tienen una serie de funciones de visualización y entrada de datos más eficientes y elaboradas que las incluidas en lenguajes de programación de alto nivel, además de permitir la utilización de dichos lenguajes de alto nivel.
Tipos de usuarios: usuarios de información, programadores que implementan soluciones a medida y administradores de la Base de Datos.
8. Tres clases de usuarios:
Programador de aplicaciones. Encargado de escribir programas de aplicación que utilicen bases de datos (lenguaje de alto nivel, como COBOL, PL/I, CLIPPER, 4GL).
Usuario final. Accede a la base de datos desde de un terminal empleando un lenguaje de consulta (DML) o a través de un programa.
Administrador de la base de datos. Se encargada del control general del sistema de base de datos.
9. Sus responsabilidades incluyen:
Decidir el contenido de la base de datos.
Decidir la estructura y la estrategia de acceso.
Definir los controles de autorización y procedimientos de validación.
Definir estrategias de respaldo y recuperación tras posibles fallos del sistema.
Controlar el rendimiento y utilización de la base de datos.
Responder a los cambios de requerimientos.
10. 3. Estructura de una Base de Datos Una base de datos es un sistema formado por un conjunto de datos organizados de forma que se controla el almacenamiento de datos (almacenándose los datos y las relaciones) y son independientes de los programas que los usan.
El acceso a los datos se hace de diversas formas. Los requisitos que debe cumplir son:
Los usuarios pueden acceder simultáneamente y cada uno tendrá acceso a una información particular.
Se controlará el acceso de todos los usuarios asegurando la confidencialidad y la seguridad.
11. Los datos se almacenan sin redundancia, excepto excepcionalidades.
Se podrán usar distintas formas de acceso, asegurándose la flexibilidad en las búsquedas.
Tienen mecanismos concretos de recuperación de información en caso de fallo de la computadora.
El cambio del soporte físico no repercutirá en los programas, ni en la base de datos.
Se podrán modificar los datos y las relaciones entre ellos sin afectar a los programas.
Incorporarán una interfaz de usuario que permita usarla de forma cómoda y sencilla.
12. Ejemplo de empresa usando una base de datos
13. Conceptos en las bases de datos: Una entidad es un objeto (real o abstracto) con características diferenciadoras, que lo distinguen de otros objetos, ha de recoger información para identificarle de una manera única.
Ejemplos:
En una empresa tendríamos el tipo de entidad: Trabajador, Representante, Pedido, Piezas, etc.
En una biblioteca, Libro, Autor, Socio, serían ejemplos de entidades.
Una academia, podría tener dos entidades: La entidad Alumno y otra para representar la información de los profesores, Profesor.
14. La información que contiene la entidad debe ser coherente y en consonancia con las necesidades.
Ejemplo:
Una empresa dedicada a vender piezas para el automóvil. Necesitaría almacenar datos de los:
representantes de la empresa,
de las Piezas que la empresa vende,
de los Clientes a los que la nuestra empresa vende sus productos,
e información referente a los Pedidos que la empresa recibe.
Así las cuatro entidades (Representantes, Piezas, Clientes y Pedidos) van a constituir la base de nuestro sistema de gestión.
15. Toda entidad contiene un conjunto de datos, a los que llamaremos atributos o campos, que describen de una manera completa a la entidad. Así tendríamos:
Para Representantes: D.N.I. del Representante, Nombre de Representante, Apellidos del Representante, Código de Representante, Dirección del Representante, Teléfono del Representante..., y todos aquellos atributos que nosotros, como diseñadores, consideremos que son imprescindibles para la definición correcta del tipo de objeto Representantes.
La entidad Piezas tendrá los atributos; Código de la Pieza, Nombre de la Pieza, Color de la Pieza, Peso de la Pieza, Ciudad de Fabricación de la Pieza, Descripción de la Pieza...
16. Libro tendría los atributos: Titulo, Nombre_Autor, Editorial, Edicion, N_Paginas.
La entidad Empleado quedaría definida con los atributos #Emp (código de empleado), DNI, NSS (número de la seguridad social), Nombre, Apellido, #Dpto (código del departamento al que pertenece el empleado), Sueldo y Categoria.
En una base de datos, la información de cada entidad se almacena en registros, y cada atributo, en campos de dicho registro.
En la base de datos tendremos diferentes tipos de registros, tantos como entidades. Ésta es la diferencia fundamental con respecto a los ficheros.
17. Para referenciar a cada una de las apariciones de ese registro en la base de datos usaremos palabras como, valor actual del registro, ocurrencia de registro.
Ejemplo:
La entidad Automovil con los campos N_matricula, Marca, Modelo, Color, Km, Gasolina, y una ocurrencia de registro: J-5757-M, Ford, Orion, Rojo, 45401, Super.
En una base de datos comercial, Tenemos las entidades Cliente, Vendedor, Producto, etc. Para el registro Vendedor, habrá tantas ocurrencias de dicho registro como vendedores hay en la empresa.
18. Es necesario que el contenido de la entidad quede reflejado de manera única respecto al resto de contenidos de esa misma entidad.
Esto se consigue mediante la clave de entidad, que no es más que uno o un conjunto de atributos de la propia entidad que identificará de una manera única a cada ocurrencia de la entidad.
Ejemplo:
la entidad Representantes contiene dos atributos que perfectamente pueden identificar de manera única a cada ocurrencia: D.N.I. y Código de Representantes.
Son claves de entidad, puesto que no existe más que un representante con un mismo D.N.I. o Código. Sin embargo pueden coexistir, varios representantes con un mismo Nombre, igual Apellido, etc.
19. Si una clave no tiene ningún subconjunto que sea a su vez clave, se dice que es una clave candidata. El diseñador escogerá una clave candidata, que será la clave principal o primaria. Al resto se les llamará claves alternativas.
Ejemplo:
En la entidad Alumno con atributos: N_matricula, Nombre, Apellido, DNI, Direccion, Telefono, F_nacimiento, tenemos como ejemplos de claves:
N_matricula
DNI (suponiendo que no existen DNI repetidos)
Nombre + Apellidos (suponiendo que no existen dos alumnos que se llamen igual)
Nombre + Apellidos + DNI
20. N_matricula + DNI (si N_matricula identifica de forma unívoca a un alumno; más aún, lo discriminará si se le añade otra condición: DNI)
N_matricula + Nombre + Apellidos + DNI
N_matricula + Nombre + Apellidos + DNI + Direccion + Telefono + F_nacimiento
Sin embargo, las claves candidatas que aparecen son:
N_matricula
DNI (suponiendo que no existen DNI repetidos)
Nombre + Apellidos (suponiendo que no existen dos alumnos que se llamen igual)
En el resto de las claves se puede encontrar un subconjunto de atributos que satisfacen la condición de ser, a su vez, claves.
21. Entre las claves candidatas escogemos:
clave primaria N_matricula.
Las otras dos claves candidatas, DNI y Nombre + Apellido, pasarán a ser claves alternativas.
Puede que no haya ningún atributo que identifique de manera única cada una de las ocurrencias de la entidad, reciben el nombre de entidades débiles y deberemos transformarlas para conseguir una entidad con clave.
A veces, nuestro sistema tendrá que incluir en una entidad, claves procedentes de otras entidades. Estas las reconoceremos como claves foráneas.
22. 3.1.-Representación de entidades y atributos El elemento entidad se representa mediante un rectángulo, dentro del cual se inserta el nombre de la entidad.
Los atributos para cada una de las entidades quedan representados por su nombre rodeado por una elipse. Si se trata de la clave de la entidad la rodearemos con una doble elipse. Los atributos que hagan referencia a una entidad deberán estar unidos a esta por una línea.
23. Representación de entidades y atributos
24. 3.2 Relaciones. Las entidades están, en la mayoría de los casos, relacionados unos con otros.
Así por ejemplo:
un Representante lo es de una serie de Piezas,
un Pedido lo ha realizado un Representante,
o simplemente un Pedido es de una serie de Piezas.
Vemos, que no basta con identificar objetos, hay, además, que establecer las asociaciones entre ellos. Para ello, se introduce el concepto de relación. Relaciones son elementos que conectan distintas entidades entre sí.
25. Ejemplos:
Establecer relaciones entre Libro-Autor, Alumno-Profesor, Departamento-Empleado, Empleado-Cónyuge, Padre-Hijo, Automovil-Propietario.
Existe una referencia entre dos entidades, cuando un campo o conjunto de campos de una de las entidades es clave de la otra; esto permitirá localizar una entidad a partir de otra.
A este conjunto de atributos se le denomina clave foránea o clave ajena de la entidad.
Ejemplo:
Las entidades Empleado y Departamento (atributos; #Dpto, Nombre, Seccion, N_empleados,número de empleados que contiene el departamento). Entre ambas el atributo #Dpto de la entidad Empleado es una clave foránea de la entidad Departamento.
26. El grado de una relación es la participación en la relación de cada una de las entidades afectadas y hay 3 tipos posibles:
1:1 (una a una). A cada ocurrencia de una entidad le corresponde no más de una ocurrencia de la otra, y a la inversa. Son relaciones biunívocas.
La relación Empleado-Cónyuge ya que un empleado podrá estar casado con una única persona, y un cónyuge tendrá un único empleado como pareja.
Alumno-Expediente.
27. 1:n (una a muchas). A cada ocurrencia de la primera entidad le pueden corresponder varias ocurrencias de la segunda, y a cada ocurrencia de la segunda le corresponde no más de una ocurrencia de la primera.
La relación Padre-Hijo puesto que un padre podrá tener varios hijos, mientras que un hijo sólo tendrá un padre.
También la relación Departamento-Empleado es una relación uno a muchos. Un departamento está formado por varios empleados, pero un empleado únicamente pertenecerá a un departamento.
28. n:m (muchas a muchas). A cada ocurrencia de la primera entidad le pueden corresponder varias ocurrencias de la segunda, y viceversa. Un profesor da clase a muchos alumnos y un alumno tiene varios profesores, por tanto la relación Profesor-Alumno pertenece a este tipo de relación, al igual que las relaciones Automóvil-Propietario y Libro-Autor.
Las relaciones con grado uno a uno reciben el nombre de relaciones simples, mientras que las relaciones con grado uno a muchos y muchos a muchos se denominan relaciones complejas.
29. 3.3 Representación de las relaciones En la representación de relaciones se utiliza un rombo que indica la relación existente entre dos o más entidades. La relación ha de tener un nombre, así por ejemplo, entre la entidad Representantes y Piezas tendríamos un tipo de relación en red del tipo N...M quedando representada en la figura 1.3.
30. 3.3 Representación de las relaciones
31. 3.4 Modelo de Datos Para diseñar una base de datos, debemos acotar la parcela del mundo exterior que nos interesa. Debemos:
aprender, comprender y conceptualizar dicho mundo exterior y
transformarlo en un conjunto de ideas y definiciones que sean una imagen fiel del mundo real.
Es un proceso de abstracción del mundo que nos rodea. A esta imagen del mundo exterior la llamaremos modelo conceptual.
32. Posteriormente, el modelo conceptual se ha de transformar en una descripción de datos, atributos y relaciones que llamamos esquema conceptual de datos.
Por último, este esquema conceptual habrá que traducirlo a estructuras almacenables en soportes físicos.
El proceso de abstracción ha permitido pasar del mundo real al mundo de las ideas, y a partir de éste, pasar del mundo de las ideas al de los datos, estableciendo así un esquema conceptual de datos.
33. Evolución del mundo real al esquema conceptual
34. En el modelo de datos se describen los datos, sus relaciones, su semántica y sus limitaciones, de tal forma que facilita la interpretación de nuestro mundo real y su representación en el mundo informático.
Contiene dos tipos de propiedades:
Propiedades estáticas. Son invariables en el tiempo. Son las estructuras.
35. Propiedades dinámicas. Son las propiedades que varían con el tiempo. En el modelo de datos, son las operaciones. Pueden ser de:
Selección. Localización de los datos deseados.
Acción. Realización de una acción sobre los datos seleccionados. Dicha acción puede ser: recuperación (obtención de los datos seleccionados) y actualización (modificación, inserción y borrado).
36. 4. Funciones Todos los programas gestores de base de datos tienen la característica de que la organización de la información viene definida por el usuario, quien determina:
Qué ficheros (tablas) va a usar.
Qué campos va a tener cada registro y de qué tipo va a ser cada campo (carácter, numérico, fecha, lógico, etc.)
37. Para poder manejar la información, tendrán que soportar facilidades como:
Adición de registros.
Modificaciones del contenido (de un registro o de los registros seleccionados).
Ordenación de la información (por claves).
Posibilidad de realizar determinadas operaciones matemáticas y estadísticas.
Recuperación y visualización de registros (por distintos campos y con distintos criterios).
Borrado de registros (que cumplan unas determinadas condiciones).
Órdenes relacionales que permitan operaciones entre varios ficheros con algún campo en común.
Generación y emisión de informes y etiquetas en diversos formatos.
38. También hay posibilidad de usar un lenguaje de órdenes similar a los lenguajes de programación de alto nivel.
Incorporan un sistema de generación de aplicaciones de gestión de base de datos mediante la cual no es necesario escribir una línea de programa.
De esta manera, el usuario es capaz de hacer uso del sistema sin saber programar.
39. Las etapas para crear una aplicación son las siguientes:
Crear el soporte físico de la información: ficheros de datos, relaciones entre ellos e índices.
Definición de la entrada/salida: pantallas de entrada de datos y consultas.
Salida impresa: listados, etiquetas, formularios, informes, webs, etc.
Interfaz de usuario: menús, pantallas de ayuda y definición del programa. Crear una aplicación
40. Módulos de utilidad y generadores de código:
Módulos de utilidad: a partir de operaciones de menús permiten crear el soporte físico (diseño, asistente).
Generadores de código: son los módulos que generan los programas que utilizan los ficheros e índices ya definidos, como son :
Módulo generador de consultas: permite realizar consultas y crear vistas de las mismas (diseño, asistente). Ficha consultas. Observa como la consulta diseñada se traduce al lenguaje Sql.
Módulo generador de pantallas: permite generar formatos de entrada y verificación de datos y formatos de visualización de los datos. Ficha Formularios.
Módulo generador de informes: permite diseñar listados, formularios y la salida impresa. Ficha informes.
Módulo generador de páginas web: permite diseñar páginas webs para el acceso a los datos desde un navegador. Ficha páginas webs.
41. Módulo generador de etiquetas.
Módulo generador de aplicaciones: genera la interfaz de usuario de la aplicación, menús, pantallas de ayuda, permite incorporar todo el código generado por los otros módulos y crea la aplicación final. El código generado es ejecutable y modificable por el usuario.
Modificación de plantillas. Las plantillas no son fijas y posibilitan generar códigos diferentes del mismo objeto. Existe un lenguaje, llamado De Plantilla, que permite modificar el fuente de las plantillas, permitiendo al usuario optimizar el código generado.
42. La mayor parte de las bases de datos que diseñemos se van fundamentar en siete elementos que constituirán, en su conjunto, la totalidad de la base de datos:
Tablas, Consultas, Formularios, Informes, páginas webs, Macros y Generador de aplicaciones.
43. 4.1 Tablas Definiremos tabla como un sistema o dispositivo de almacenamiento de los datos referentes a una entidad.
Así por ejemplo definimos la tabla Representantes, la tabla Piezas y la tabla Pedidos, para las entidades vistas anteriormente, de la empresa dedicada a la venta de piezas para el automóvil.
Las columnas se conocen con el nombre de campos o atributos y representan las distintas categorías de información disponibles en la tabla (entidad).
44. Código de Representantes, Nombre del Representante, Apellidos del Representante, Dirección del Representante, domicilio del Representante, Teléfono del Representante... conformarían las columnas o campos de la tabla Representantes.
Las filas (también llamadas registros) se definen como el conjunto total de los atributos o campos para un elemento de información individual. Habrá tantas filas como ocurrencias de registro haya.
MANOLO, PÉREZ PEREZ, AVENIDA DEL OLIVO Nº 8, JAÉN, (953) 222222..., constituirían una fila o registro dentro de nuestra tabla.
45. 4.2 Consultas. Las consultas permitirán reorganizar o restringir la información almacenada de acuerdo con una serie de criterios establecidos por el usuario.
Es una de la partes más importantes dentro de una base de datos. Una base de datos, además de servir de soporte a los datos, ha de permitir el acceso a la información relacionada.
Access utiliza un sistema muy intuitivo y a la vez sencillo. Con una interfaz gráfica permite definir fácilmente qué campos se desean incluir en los resultados de la consulta y qué condiciones de restricción se aplicarán a dichos campos.
Permite una vez diseñada la consulta de manera gráfica, visualizar el código de lenguaje SQL, poder modificar ese código y ver como se altera ese dieseño gráfico
46. 4.3 Formularios. Nos van a permitir la manipulación de la información contenida en una base de datos mediante una interfaz gráfica similar al de cualquier aplicación Windows.
Mediante los formularios vemos la información disponible en la base de datos. Realmente los formularios van a ser el elemento que el usuario final de la aplicación que desarrollemos va a utilizar, por tanto en su diseño, tendremos en cuenta una serie de características que afectan directamente al usuario final.
47. 4.4 Informes. Se pueden definir los informes como el medio que ofrece Access para presentar la información de la base datos en un formato que se hace ideal para su salida por impresora o cualquier dispositivo similar. Seremos nosotros los que elegiremos los elementos que queremos utilizar así como la forma en que deseamos disponerlos en el informe.
48. Gestores de Base de Datos 48 Páginas web Las páginas webs permitirán el acceso y modificación para la información almacenada desde un navegador en cualquier parte del mundo. De acuerdo con una serie de criterios establecidos por el usuario.
Es una de la partes más importantes dentro de una base de datos. Una base de datos, además de servir de soporte a los datos, ha de permitir el acceso a la información relacionada.
Puedes realizarlas de tablas o de consultas, el funcionamiento es idéntico a los formularios e informes.
49. 4.5 Macros. Conjunto de operaciones, de teclado y de ratón, que nos permitirán automatizar cualquier tarea repetitiva de una base de datos.
Las macros de Access se componen de una serie de acciones predeterminadas por el programa que realizan operaciones de gestión tales como abrir o cerrar formularios e informes, ejecutar comandos de menú o examinar los registros de una tabla.
Ejemplo de Macro en la oficina: Estoy teniendo un problema, cada vez que modifico un fichero, para que se actualice automáticamente en su formato “pdf” y lo tengáis en las dos versiones lo mismo. Habrás observado que a veces se olvida y no coinciden. ¿Cómo podría solucionarlo con una macro?.
50. 4.6 Módulos. Los módulos con Access nos permiten automatizar tareas en una base de datos, creando aplicaciones.
Un módulo es una colección de procedimientos creados mediante instrucciones Visual Basic.
51. 5. Cómo crear un aplicación con Microsoft Access
52. 5.1 Gestión de bases de datos Una de las características más importantes de la gestión de bases de datos es la automatización de los procesos mediante la creación de aplicaciones. Pretendemos dar una visión global de la filosofía de programación de Microsoft Access para la gestión de bases de datos.
Access fué el primer gestor de bases de datos diseñado por Microsoft y uno los primeros que apareció para el entorno Windows. Esas fueron las razones por las que los siguientes sistemas de gestión de bases de datos relacionales (SGBDR) siguieron la pauta de Access.
53. Access está diseñado en torno a objetos de base de datos. Estos objetos son tablas, consultas, formularios, informes, macros y módulos, que se manejan de forma independiente, cada uno con su propio código y a la vez siendo complementarios para formar la aplicación completa.
Posee un lenguaje de programación llamado Visual Basic, de tipo estructurado y con las mismas herramientas que otros lenguajes.
Se diferencia de éstos en que la forma de funcionamiento está orientada a eventos. Es decir, el código introducido en la base de datos responde ante eventos que se produzcan en cualquier lugar de la aplicación.
54. En otros sistemas se escribe un programa principal que funcione como núcleo central para controlar los procesos de otras subrutinas que forman la aplicación, indicando qué objetos deben aparecer y cómo reaccionar, por ejemplo, ante la introducción de un dato. Sin embargo, en Access los objetos se administran a sí mismos gracias al código subyacente debajo de cada objeto.
Así, no se necesita ningún código que compruebe si en un botón se hace «click», sino que el código asociado se ejecuta reaccionando ante el evento HacerClick que se ha producido en ese botón.
55. Normalmente no será necesario programar código para realizar cualquier tarea por complicada que sea, ya que se podrá hacer manualmente o simplemente con las macros. Pero si incluso así no es bastante, mediante Visual Basic podemos ir más allá. Con Visual Basic podemos escribir funciones y procedimientos especiales que nos permitirán no sólo automatizar procesos, sino dotar de mayores capacidades y funcionalidad a la aplicación que se va a desarrollar.
56. 5.2 Ideas básicas La composición de una base de datos y una aplicación de base de datos es prácticamente la misma, está formada por los mismos objetos. Lo que diferencia una aplicación de una base de datos es la forma en la que todos sus objetos se enlazan, la aplicación facilita que el usuario se concentre en el manejo de los datos a través de un sistema coherente de gestión.
Antes de comenzar hay que tener claro, cuál es el propósito y qué objetivos se pretenden alcanzar. Debemos hablar con las personas que realizan esas tareas para ver cómo lo hacen y deberíamos obtener copias de los informes y formularios.
57. El siguiente paso consiste en crear las tablas. Hay que tener bien claro el carácter de los distintos datos para diferenciarlos en tablas separadas y las relaciones entre las distintas tablas. Todos estos datos y las relaciones entre las tablas constituye el cimiento sobre el que se va a apoyar nuestra aplicación, por lo que este cometido será uno de los más importantes.
Lo primero que hay que hacer es diseñar la presentación que va a tener la aplicación cuando accedamos a ella. Esto se consigue mediante la creación de formularios que conforman lo que será la interfaz de usuario.
58. La aplicación, como norma general, girará en torno a formularios que controlarán el flujo de ésta mediante el código asociado a los distintos objetos de los mismos.
Se empezará por mostrar una ventana con el título de la aplicación y luego aparecerá la interfaz que dará acceso a la gestión de la base de datos.
59. 5.3 Primeros pasos Diseñaremos un formulario con la carátula que muestre el nombre de nuestra aplicación.
Para ello abriremos un nuevo formulario en modo de diseño. Cuando aparezca la ventana de diseño debemos especificar el tamaño que va a tener la ventana de formulario seleccionando las líneas delimitadoras de la sección y arrastrando con el ratón. Posteriormente le podemos dar un color de fondo utilizando el botón de la barra de herramientas de la paleta.
60. Ahora vamos a seleccionar en la caja de herramientas la herramienta correspondiente a etiquetas, incorporándola al formulario con un «click» del ratón. Introducimos el texto que queremos que contenga y configuramos el tipo de letra, color y tamaño de la etiqueta. Encima de esta etiqueta colocaremos otra de mayor tamaño, para que contenga el titular de la ventana que será «APLICACION DEMO».
Para acabar debemos conseguir que la ventana no sea estática. Para ello abriremos la ventana de propiedades del formulario y, seleccionando la propiedad al cronómetro (Form_timer), escribiremos la cantidad de tiempo en milisegundos que permanecerá abierta.
61. 5.4 El menú principal Va a ser la interfaz de navegación para acceder a la gestión de las tareas que realizará nuestra aplicación. Estará compuestos por botones de comando que dan acceso a cada tarea. En nuestro caso incluiremos un cuadro de opciones con distintos botones para visualizar distintas utilidades.
Junto a los botones de comando podemos adjuntar un cuadro de lista en el que se visualizarán las distintas alternativas que se nos presentarán con cada pulsación de botón.
Para finalizar pondremos unos botones en la parte de debajo para aceptar la opción o salir de la ventana.
62. 5.6 El segundo menú Se accede a través de una opción del menú principal.
Para ello abriremos un nuevo formulario desde la ventana de bases de datos.
Insertaremos botones de comando que realicen las tareas que queramos.
Para crear el código que se encuentra detrás de la interfaz:
con una macro compuesta por varias macros simples, tantas como botones incluya nuestro menú.
cada una de estas macros simples contiene las acciones que se ejecutarán con la pulsación de cada uno de estos botones.
63. Para asociar la macro compuesta con cada uno de los botones debemos:
seleccionar cada botón y abrir el cuadro de propiedades.
elegiremos la propiedad «Al Hacer Click», que nos abrirá un cuadro de lista con las diferentes macros que hemos creado en nuestra aplicación.
elegir entonces la macro con el nombre que le dimos, junto con el nombre de la macro simple que identifica el nombre del botón.
64. Con este último formulario ya tendríamos la aplicación con acceso a las bases de datos de ordenadores, artículos, empleados, diferentes secciones, representantes, actualización de la base de datos y la obligatoria opción de regresar al menú principal. Tan sólo nos faltaría por crear los formularios de base de datos que se van a abrir cuando elijamos el botón correspondiente.
Este cometido se puede realizar de forma muy sencilla, utilizando el asistente de formularios al seleccionar el botón de nuevo formulario en la ventana de base de datos.
Con esto podemos hacernos una idea de la forma de programar una aplicación Access.
65. 5.7 Soluciones predefinidas Una forma rápida y útil de añadir prestaciones consiste en utilizar la base de datos soluciones.mdb, incluida con el propio Access.
La aplicación «Soluciones» está desarrollada de manera estándar,
el núcleo central es un formulario que propone una serie de opciones para el diseño de una base de datos a través de un cuadro de lista que tiene como origen una consulta.
Cada opción, a su vez, muestra una serie de temas relacionados, de tal forma que al elegirlos se nos muestra la solución tanto de forma sintáctica como gráfica y con una ventana de ayuda.
66. la ventana «Muéstreme», señala las principales características del ejemplo que tengamos escogido.
Posteriormente, elegiremos la característica que deseemos y haremos «click» en la especificación paso a paso que, finalmente, nos guiará a través de los diferentes procedimientos que deberemos seguir en nuestra aplicación original.
Entre los diversos ejemplos que podremos encontrar, tenemos la forma de crear un interfaz tipo Windows; uso avanzado de cuadros combinados, cuadros de lista, formularios y subformularios; controlar lo que aparece impreso en un informe, o utilización de múltiples bases de datos. Todo esto, es igual en las otras herramientas de Microsoft Office.
67. 5.9 Aplicaciones propias ADT (Access Developer's Toolkit), es un kit de desarrollo con el que podemos distribuir aplicaciones runtime libres de royalties, crear soluciones cliente-servidor y desarrollar asistentes y otros accesorios para Microsoft Access.
Proporciona los elementos, como código de ejemplo, controles personalizados de OLE 2.0 para el diseño de avanzadas interfaces de usuario, así como extensa información para el desarrollo de aplicaciones.
Proporciona un asistente de instalación para crear discos y ficheros comprimidos automáticamente.
68. 6 Integrar la información La oleada de SGBD de distintas plataformas con diferentes formatos hace necesario manejar los datos de manera combinada sin caer en incompatibilidades.
Empresas como Microsoft y Borland han sacado sus propios estándares de conectividad, con los que se facilita el acceso a los datos generados por cualquier programa gestor, independientemente de su entorno físico o lógico.
69. La Open Database Connectivity (ODBC) es la estrategia de la interfaz de programación de aplicaciones SQL de Microsoft para el acceso a información contenida en bases de datos universales y heterogéneas.
ODBC ofrece una solución abierta e independiente del fabricante:
para acceder a la información almacenada diversas bases de datos, relacionales o no,
y generadas desde PCs, Mac, LAN, minis o mainframes.
ODBC es un elemento de la «Arquitectura de Servicios Abiertos para Windows» (WOSA) de Microsoft.
70. Igualmente Borland ha desarrollado Object Database Application Programming Interface (ODAPI). Para obtener datos remotos debemos rellenar, una plantilla de configuración que especifique que se almacenará en su archivo de configuración.
Las aplicaciones con ODAPI poseen un directorio cuya ruta es C:\ODAPI y donde se encuentran todos los archivos relacionados con ODAPI.
La finalidad de estos ficheros se encuentren ubicados en C:\ODAPI , es asegurar que todos los productos de Borland funcionen juntos sin problemas y ocupen el mínimo espacio posible en el disco duro.
71. 7. ¿Cómo evaluar el SGBD? Los Sistemas de Gestión de Bases de Datos (SGBD) se han convertido en parte fundamental de la estrategia de las empresas. Resulta imprescindible contar con elementos de juicio a la hora de optar por una u otra solución, ¿cuál se adecua mejor a nuestras necesidades?.
El valor de una información actualizada ha crecido tanto que las empresas que quieran incrementar su productividad deberán gestionar eficientemente todos los datos que manejan, y la mejor herramienta es un SGBD.
72. ¿Qué aspectos hay que considerar en la evaluación práctica del rendimiento de los Sistemas Gestores de Bases de Datos?.
El análisis abarca diversos aspectos:
modelo de datos (relacional, jerárquico, en red)
independencia lógica y física (arquitectura de dos o tres niveles)
lenguajes de definición y manipulación de datos (SQL, dBase)
herramientas para el desarrollo de aplicaciones (lenguajes de cuarta generación, generadores de aplicaciones, CASE)
herramientas de consulta (interfaces interactivos, QBE, generadores de informes)...
73. Todos estos aspectos, resultarán inútiles si el SGBD no es capaz de responder adecuadamente al conjunto de aplicaciones y a las exigencias de los usuarios.
La idea de definir un conjunto de pruebas que indiquen cuál es el gestor ideal es imposible, ya que pueden variar según infinidad de factores. Lo que sí haremos es evaluar características muy concretas en cada uno de los productos.
Con ello basta con saber qué queremos conseguir de un SGBD y buscar uno que destaque en eso que nosotros esperamos.
74. 7.1 Qué funciones evaluar en un SGBD Una de las funciones primarias que es la base a partir de la cual empezaron a evolucionar, es el almacenamiento y recuperación de datos. Entre las tareas de recuperación de datos podemos encontrar:
la velocidad de ejecución de consultas,
la creación de índices o
la importación de datos.
La evaluación se ha realizado en función del tiempo que tarda cada SGBD en llevarlas a cabo, ya que la velocidad representa la eficiencia en la realización de cada función.
75. Existen otras variables menos importantes que podrían condicionar el rendimiento, entre ellas:
la protección de datos (bloqueos para garantizar el acceso exclusivo),
la asignación de memoria interna
el control de accesos de los usuarios
el consumo de recursos (esto último se refiere a la capacidad de funcionar en un entorno de recursos limitados y en armonía con otras aplicaciones).
76. 7.2 Rendimiento Para la medida del rendimiento existen monitores del SGBD que van encaminados a averiguar los recursos de la máquina que se están consumiendo, proporcionan tiempos específicos del sistema gestor.
Hay la posibilidad de realizar programas específicos que midan exactamente el conjunto de características deseado. Estos programas se basan, en la anotación de la hora del sistema antes y después de realizar las operaciones cuyo rendimiento se quiere medir.
77. DB2 y Oracle, ofrecen más conectividad, rendimiento y potencia. Estarían más indicados para usuarios expertos y administradores de bases de datos en redes locales. De hecho, alcanzan su máxima expresión en entornos multitarea y servidores SQL.
78. 7.3 Consumo de RAM La RAM que necesitan las aplicaciones es el principal problema de los usuarios.
De hecho, es un criterio en la elección junto a la velocidad o el espacio del disco duro.
Las aplicaciones de datos son auténticas devoradoras de RAM por:
su implementación para manejar grandes volumenes de datos.
y sus entornos gráficos en los que tienen que «repintar» pantallas para realizar la representación de la información.
79. 7.5 Metodología de las pruebas Para realizar las pruebas se usaron dos bases de datos. La primera contenía un total de 135.568 registros con los campos de «nombre», «localidad» y «teléfono». La segunda incluía la dirección de 2.000 talleres distintos.
El equipo utilizado para nuestras pruebas fue un portátil de Toshiba modelo T6600C con microprocesador 486DX2 a 66 MHz, 8 Mbytes de RAM y 545 Mbytes de disco duro.
Cada SGBD fue analizado bajo el sistema operativo para el cual estaba implementado
80. Hay sistemas gestores de datos capaces de correr en diferentes entornos como Visual dBase.
Junto a todas la herramientas y cualidades de uso que ofrecen, uno de los parámetros que más tenemos en cuenta a la hora de decantarnos por un SGBD u otro es el tiempo que tarda en realizar las operaciones más cotidianas.
Pruebas:
Consulta monotabla: mostrar todos lo registros que coincida el valor de su campo «Localidad» con Madrid e indexados por el campo «Nombre». Los registros que cumplían dichas condiciones era de 35.647.
81. Búsqueda de un registro mediante el valor de uno de los campos que lo componen.
Búsqueda con la tabla indexada por uno de sus campos. El fin era demostrar la conveniencia o no de tener creados índices para una tabla.
Otra pregunta que trata de responder esta prueba es cuál de los diferentes formatos de ficheros de indexación tiene un mejor rendimiento.
Consulta para mostrar por pantalla de una forma combinada los datos pertenecientes a dos tablas diferentes (consulta multitabla).
La primera era la de clientes, y la segunda era la base de datos de información de talleres. Relacionamos ambas bases de datos por el campo «Localidad» en una relación uno a muchos. Por último, realizamos una consulta de actualización en la que seleccionamos los clientes que no fueran de Madrid cuyo teléfono empezara por cinco y estuviera ordenado de forma ascendente por el nombre.
82. Hay que resaltar la facilidad que tiene Access de incluir en un solo fichero todas las tablas, consultas, informes, etc., incluyendo los índices.
Programas como Visual FoxPro, Access y Approach necesitan mucho espacio en el disco duro para crear ficheros temporales que les ayuden a ejecutar consultas. Además, estos programas exigen la desinstalación de la memoria virtual cuando no hay espacio suficiente.
83. 7.6 Tabla comparativa de resultados Formatos importación/exportación: DB,DBF,DB,DBF,DBF,DBF,DB,SQL,WK*,XLS SQL,XLS,WKS,DB,DBF, XLS,WK3,DB,WRK,RPD
V. dBase Paradox CA-S.DB Approach Access V. FoxPro
ODBC SI SI NO SI SI SI
DDE y OLE SI SI DDE SI SI SI
Programación SI SI NO SI SI SI
Asistentes SI SI NO SI SI SI
Tamaño base de datos 8,8 MB 8,8 MB 9,2 MB 9,7 MB 5,9MB 4,1 MB
Consulta monotabla 2,18" 1,45" 19,40" 2,20 1,35" 1,50"
Consulta multitabla 2,30" 3,44" NO NR 4,23" 2,10"
Busqueda normal 2,27" 2,57" 9,43" 1,55 3,95" 2,56"
Búsq. campos indexados0,57" 1,70" NO 0,45" 1,32" 1,25"
Consu. Actualización 2,27" 2,15" NO 3,12" 3,24" 0,57"
Indexación de tabla 2,11" 3,55" NO 4,2" 3,37" 1,50"
84. 8. Productos
85. 8.1 Bases de datos personalizadas A medida que acumulamos películas, libros, recetas de cocina, direcciones, programas informáticos... se hace indispensable alguna forma de clasificación.
ProSoft European Software ha demostrado que el ordenador puede ser un complemento para los no informáticos que requieran de una herramienta sencilla y práctica de clasificación. ProSoft propone un método basado en su software de creación de bases de datos, en el que la sencillez se convierte en clave.
86. Los programas son: Películas; Música; Libros; Programas Informáticos; Radio Aficionados; Contabilidad Doméstica; Recetas de Cocina; Refranes, Proverbios y Citas; Chistes; Agenda; Libro de Caja; Mailing y Etiquetas; Etiquetas; Direcciones; y Recibos.
Como ejemplo de funcionamiento, el software «Películas» tiene dos categorías de acción. Estas son Fichas y Definiciones; ambas incluyen Consultas rápidas.
Con Fichas entramos en una búsqueda clasificada por Películas, Directores y Actores, y complementada con códigos.
Con Definiciones, introducimos nuevos epígrafes y códigos en los campos propuestos por el programa, es decir, Género, Formato, Países y Valoraciones.
87. Es ideal para el aficionado al cine.
«Libros», «Recetas de Cocina» y «Refranes, Proverbios y Citas» tienen funciones parecidas a Películas. Tan sólo incluyen categorías de clasificación distintas, como Temas en el primero, Ingredientes en el segundo y Orígenes, Clases y Autores en el tercero. «Contabilidad Doméstica» ofrece opciones que le hacen ser bastante completo para llevar lo que se refiere a gastos o ingresos familiares. Su precio, 4.900 pesetas.
El precio máximo por aplicación es 4.900 ptas. Da la posibilidad de adquirir el Personal Pack (Contabilidad Doméstica, Etiquetas y Agenda) por 8.900 ptas.
88. 8.2 El SGBD de Windows NT Los principales SGBD dada su potencia son: Oracle, IBM DB2 y SQL Sever de Microsoft.
Dos son las características: conectividad y escalabilidad. Este trío de gestores ofrecen su máximo rendimiento en entornos multiusuario.
Están implementados para dar su fruto en grandes cuentas. En estos entornos deben satisfacer dos reglas de oro:
asegurar que múltiples transacciones realizadas en un mismo tiempo produzcan el mismo efecto que si se hubieran ejecutado de una forma aislada y
coordinar los cambios en los datos de un forma consecuente dentro de una gran organización.
89. 8.2.1 En general El SQL Server permite el acceso a dos Gbytes de memoria y a un gran número de Terabytes (mil Gbytes) almacenadas en disco gracias a la arquitectura de 32 bits especialmente optimizada para trabajar en Windows NT.
La escalabilidad a arquitecturas simétricas servidoras está contemplada por este SGBD, que asegura un alto grado de escalabilidad utilizando uno o varios procesadores, ya que distribuye de una manera dinámica y equilibrada entre ellos las tareas del usuario.
90. Otra faceta importante es la del manejo, las herramientas que tiene para interactuar con el usuario y el grado de dificultad de éstas. Son de carácter gráfico, entre éstas se encuentran el «SQL Administrator», el «SQL Object Manager» y el «SQL Service Manager».
Otro aspecto es el de soporte de transacciones tipo OLTP (On-Line Transaction Processing). Este es un modelo de interacción caracterizado por grandes volúmenes de cortas y simples operaciones. El objetivo de soportar esta modalidad no es otro que el de servir de apoyo a los usuarios.
91. 8.2.2 Integridad La cuestión crítica en el entorno multiusuario es controlar la integridad de los datos:
Los triggers, este término identifica las instrucciones que se ejecutan cuando se realiza una operación de inserción, actualización o supresión dentro de una base de datos. Esto permite:
que varios usuarios puedan coordinar el acceso a unos mismos datos en el mismo momento,
que cualquiera de ellos vea una perspectiva constante de los datos y
que puedan impedir cualquier operación que provoque una inconsistencia de estos,
o forzar la integridad de dichos datos dentro de un único servidor o varios.
92. Vamos a enumerar las clases de integridades:
La primera es la Entity integrity (integridad a nivel de registros), que consiste en evitar la duplicidad de registros.
A continuación tenemos la Domain integrity (rangos), que ofrece la posibilidad de asignar un rango de valores validos para un campo, lo que reduce la posibilidad de introducir datos erróneos. El nombre técnico es el de constrains.
En entornos multiusuarios es importante la Referential integrity (integridad referencial), que es la encargada de mantener una consistencia entre los datos relacionados de diferentes bases de datos.
93. Ejemplo: hay dos bases de datos, una con las compras y otra con datos personales. Lo que evita es que los datos personales del individuo no se puedan borrar hasta que todos los registros que le corresponden de la base de datos de compras no estén marcados como pagados. Evitamos que se den de baja mientras tenga pagos pendientes.
SQL Server permite crear perfiles de usuarios para acceder a una determinada base de datos; seguridad contra personas no deseadas (User-defined integrity).
La Distributed data integrity, mantiene la consistencia y exactitud de los datos que son replicados o divididos a través de múltiples bases de datos o servidores. Esto asegura la disponibilidad en sistemas distribuidos. El protocolo usado es el two phase commit.
94. 8.2.3 Conectividad y compartición SQL Server puede acceder a otras bases de datos vía ODBC (Open Database Conectivity o conectividad de bases de datos abiertas).
Otra forma de acceder a sistemas de datos de otras fabricantes es mediante gateaways (pasarelas) desarrolladas mediante Microsoft Open Data Services (ODS), o productos de terceros fabricantes. Podremos acceder a sistemas tan dispares como Oracle, Informix, Ingres, IBM AS/400, IBM DB2, IBM SQL/DS y Teradata.
95. En entornos de red es capaz de operar en las más populares redes y protocolos. Entre estos se encuentra todos los entornos Unix, Windows NT Server, Microsoft LAN Manager, IBM LAN Server, Banyan Vines, Novell NetWare, DEC PathWorks, AppelTalk y redes con protocolo TCP/IP.
Todas estas características se ven mejoradas y ampliadas si se trabaja en Windows NT Server, ya que podrá incorporar aplicaciones externas propias de Microsoft que aumentan la conectividad. Este es el caso «Microsoft SNA Server», que posibilita la conexión a través de redes IBM SNA.
96. 8.2.4 Programación «Microsoft SQL Server Programmer's ToolKit» es el encargado de facilitar la creación de aplicaciones cliente/servidor que accedan a los datos y gestionarlos.
Este kit incluye unas librerías denominadas DB específicas para programación en C y Visual Basic.
También provee un entorno de programación para crear aplicaciones cliente/servidor que gestionen bases de datos; éste esta constituido por una serie de instrucciones SQL del preprocesador para C y Cobol de libre distribución.
97. 8.2.5 Competidores directos Oracle y DB2 son sus principales competidores en el mercado. La potencia de ambos gestores sirve de referencia al resto de fabricantes. Un valor muy importante es la disponibilidad en la mayoría de las plataformas existentes.
SQL Server cuenta con la ventaja de que está especialmente optimizado para un sistema operativo: Windows NT.
Los tres SGDB son sumamente parecidos, si bien Oracle y DB2 copan los primeros puestos. Esta afirmación está basada en el software periférico que se les puede incorporar para implementar determinadas funciones. Otro factor que influye es que SQL Server es el más reciente.
98. Las utilidades de programación de las tres, «SDK» (DB2), «Oracle Power Object» y «Microsoft SQL Server Programmer Toolkit» son bastante buenas.
El factor más decisivo es el sistema al que queremos acceder y a qué plataforma queremos migrar nuestras aplicaciones; en resumen, la elección depende de las necesidades de cada usuario.
Respecto a las capacidades para mantener la integridad de los datos son prácticamente idénticas. Cumplen con todas las clases de integridad expuestas, lo que significa que por defecto incluyen dispositivos como contrains (restricciones) y triggers (disparadores).
99. En cuanto a la capacidad multimedia la técnica de Oracle es diferente respecto a la de las demás. La técnica empleada por SQL Server (mediante campos BLOB) es muy similar a la de DB2. Hay diferentes tipos de campos LOB (BLOB, CLOB y DBLOB).
Una definición de este tipo de campos podría ser que son una especie de sacos que admiten cualquier clase de datos, ficheros de imágenes, sonido, etc.
100. 8.5 ORACLE
101. 8.5.1 Oracle para network computing El nuevo servidor de base de datos relacional orientada a objetos es operativo sobre varias plataformas hardware y entornos de gestión de datos.
Oracle ha anunciado una nueva plataforma capaz de trabajar con aplicaciones Internet, entornos OLTP (procesamiento de transacciones en línea) y data warehouse independientemente del sistema operativo del cliente o de la arquitectura del servidor.
102. Oracle gestiona:
cualquier tipo de datos (alfanuméricos o complejos),
soporta grandes volúmenes de información (incluso petabytes, es decir, miles de terabytes)
y decenas de miles de usuarios,
ofrece la posibilidad de usar PCs, NCs, sistemas Unix, Windows NT, SMP, MPP, mainframes...
Se dirige, a grandes y medianas empresas que operen en entornos internet/intranets o cliente/servidor.
103. En sus funcionalidades para data warehouse:
agiliza el acceso a la información y lo convierte en autónomo y personal.
mejoras de rendimiento en las consultas,
sistema que recupera automáticamente los archivos en caso de caída del sistema y las operaciones de inserción, actualización y eliminación de datos se pueden realizar en paralelo.
Respecto al nivel de transacciones on-line se puede decir que es comparable al de un mainframe.
Alta disponibilidad y capacidad de gestión con tablas e índices divididos en particiones.
También se ha mejorado el soporte con inscripciones dinámicas, recuperación de transacciones para Oracle Parallel Server (OPS).
104. 8.5.3 Oracle Context para análisis lingüístico Permite realizar análisis lingüísticos, almacenar, analizar y extraer documentación de forma inteligente. En combinación con la herramientas de desarrollo Designer/2000, Developer/2000 y la familia de productos Oracle7, ofrece la oportunidad de crear un sofisticado sistema lingüístico.
Posibilita la integración de bases de datos documentales de gran tamaño con aplicaciones cliente/servidor. Además, mediante ConText se pueden efectuar búsquedas temáticas, reducción de documentos indexada, categorización por relevancia, lectura rápida a través del sistema SpeedRead.
105. 9. Correo personalizado Es una de las tareas más extendida en las oficinas es la de personalizar documentos para un elevado número de destinatarios. Esto se soluciona uniendo la base de datos con el tratamiento de textos.
Los programas de tratamiento de textos incorporan la posibilidad de realizar Mailing (llamado fusión de datos). Permiten crear estructuras de datos e introducir información para luego personalizarla con documentos tipo o patrones que hacen referencia a esos datos.
106. Los paquetes integrados incorporan facilidades para realizar la fusión de la información del módulo gestor de base de datos con documentos creados para este fin en el módulo de tratamiento de textos.
La información de los datos puede estar generada con un gestor de base de datos y los documentos patrones estar realizados con programas de tratamiento de textos.
El problema consiste en la compatibilidad e integración de estas dos herramientas. Los procesadores de textos incorporan facilidades para integrar datos en diferentes formatos.
107. Ejemplo: Datos de Dbase III en formato DIF, o datos almacenados de forma que los separadores entre campos y registros sean fáciles de controlar para finalmente poder integrarlos con los documentos.
En todo mailing habrá tres tipos de trabajo :
Creación y actualización de las listas de datos.
Creación de las cartas patrón.
Impresión de los documentos personalizados en papel (sobres, etiquetas, listas, etc.) .