Tema 55 – Bases de datos: tipos, estructuras y operaciones. Sistemas de gestión de bases de datos: funciones y tipos.

Tema 55 – Bases de datos: tipos, estructuras y operaciones. Sistemas de gestión de bases de datos: funciones y tipos.

INTRODUCCIÓN.

Dentro de cualquier organización, disponer con rapidez de una información completa y fiable constituye un elemento esencial para garantizar la gestión eficaz de los recursos de la misma, mejorar la calidad de los servicios que presta y adecuarse constantemente al entorno que la rodea. Esto hace que un objetivo primordial de los responsables de cualquier organización sea el de garantizar la calidad de la información.

La sociedad actual está enormemente automatizada; podemos ver todos lo días, cuando compramos en un supermercado, vamos a un videoclub o agencia de viajes, cómo, mediante herramientas informáticas, nos informan de precios, ofertas disponibles, guías de viajes y hoteles, etc. Estas herramientas o programas mejoran en gran medida la eficacia del trabajo en las empresas, pero por otra parte generan una cantidad enorme de datos que es necesario elaborar para obtener de ellos la información necesaria.

De aquí surge la necesidad de utilizar a su vez nuevas herramientas que permitan manejar toda esta información de manera rápida y fiable, con la que podamos estructurarla y almacenarla, pero que también nos permita elaborarla y acceder a ella con rapidez.

A lo largo del tema vamos a analizar las bases de datos, sus tipos y estructuras, así como los sistemas de gestión de bases de datos.

Una base de datos es un programa fundamental en nuestros días y sobre todo en las empresas y organismos de todo tipo, pues a través de ellas podemos manejar grandes cantidades de datos ocupando un mínimo espacio en el ordenador y permitiendo la consulta, gestión y mantenimiento de los ficheros de forma ágil y segura.

1. BASES DE DATOS: TIPOS, ESTRUCTURAS Y OPERACIONES.

1.1. CONCEPTO DE BASE DE DATOS.

El concepto de base de datos comenzó a desarrollarse en la década de los sesenta. Desde entonces, no ha dejado de adquirir cada día más importancia entre los usuarios de sistemas informáticos.

Una base de datos es una colección de datos organizados de alguna manera e interrelacionados entre sí, almacenados sin redundancias innecesarias de modo que resulten independientes de los programas que los usen. Es decir, es un conjunto de datos organizados entre sí.

Pensemos en los ficheros o archivos que hay en una biblioteca en donde, como sabemos, existen unas fichas o registros que contienen la información relativa a cada libro, título, autor, editorial, número de páginas (campos). El bibliotecario debe organizar las fichas de la base de datos por títulos, o por autores. Debe dar de alta más fichas e insertarlas en su lugar correspondiente. Quizá sea necesario que elimine alguna ficha si el libro ya no está. Es posible que quiera saber cuántos libros hay sobre matemáticas o cuántos están prestados y a quién.

La solución a estos problemas será aquella en la que toda la información necesaria para la biblioteca se almacene de forma centralizada y organizada de manera que los datos no se repitan, para permitir que cada programa pueda obtener la información que precise.

1.2. TIPOS DE BASES DE DATOS.

Podemos clasificar las bases de datos en tres categorías:

Relacional.

Jerárquica.

En red.

Veamos cada una de ellas un poco más profundamente.

1.2.1. BASES DE DATOS RELACIONALES.

Una base de datos relacional es un conjunto de información organizada sistemáticamente en la cual registros de una base de datos tienen relación con registros de otra base de datos distinta.

La base de datos relacional más utilizada en la actualidad es Access.

Si el manejo de cualquier base de datos tiene ventajas de uso, una base de datos relacional como es Access posee aún más ventajas. Entre ellas están:

– La creación de tablas que permiten ser utilizadas posteriormente sin ser manipuladas.

– La relación entre tablas que posibilitará utilizar diferentes datos de varias tablas a la vez sin repetir la información que contienen.

Y todo ello, además dentro del entorno Windows, lo cual significa:

– Utilización de Asistentes fáciles de usar (un asistente es una guía en pantalla, paso a paso).

– Incorporación de macros para automatizar tareas.

– Incorporación de módulos de programación Visual Basic para bases de datos.

– Soporte de DDE (Dynamic Data Exchange: intercambio dinámico de datos) y OLE (Object Linking and Embedding) enlace e incrustación de objetos.

– Importación, exportación y vinculación con archivos externos.

Access es un sistema de administración de datos relacional. Podemos guardar datos según temas, lo que los hace fáciles de encontrar y verificar, además podemos almacenar información acerca de la manera en que los temas se relacionan entre sí, por lo que es fácil agruparlos en temas relacionados.

1.2.2. BASES DE DATOS JERÁRQUICAS.

La Base de Datos jerárquica más utilizada normalmente es I.M.S.

En estas bases de datos, las aplicaciones son efectuadas por lotes, es decir, en tiempo compartido. De esta forma, está permitido que la utilización de la base de datos, se haga desde terminales remotos.

Los datos de un sistema I.M.S. se componen normalmente de varias bases de datos lógicas, en las que cada una de éstas es un subconjunto de la base de datos física.

En un sistema I.M.S. cada unidad se denomina segmento y cada atributo campo. En estos sistemas, cada segmento está ligado a otro nivel más alto aunque nunca a más de uno. Se puede decir que cada elemento tendrá uno o más sucesores.

Es evidente que el punto de partida de la base de datos raíz no tiene predecesores, aunque sí sucesores. Estos sucesores o árboles, constituyen una base física que, lógicamente, se componen de base de datos lógicas.

Supongamos un fichero de empleados, en el que están contenidos los datos de dichos empleados. Supongamos un segundo fichero, en el que están los datos del sueldo a cobrar y en el último fichero los datos de seguridad social y retención. Se puede deducir que el único campo que no tendrá predecesor es el campo código, y decimos predecesor, ya que este campo es único dentro de cada registro. Podemos deducir que el resto de los datos del empleado están jerarquizados a este campo código y es por lo que recibe el nombre de raíz. Es evidente que el código será un campo que solamente aparecerá una vez por registro.

Si hablamos del aspecto de actualización de las bases de datos, los procesos de inserción, eliminación, recuperación o actualización de elementos (segmentos) se realiza mediante una serie de lenguajes asociados a las distintas operaciones.

1.2.3. BASES DE DATOS EN RED.

En este tipo de bases de datos, las entidades se presentan como registros, conectándose unos con otros mediante estructuras en Red. La diferencia, en este caso en que cualquier elemento puede ser raíz.

Cada elemento, además, puede tener más de un predecesor, y más de un sucesor. De esta forma, el acceso a cualquier base de datos lógica se puede hacer desde cualquier documento.

En estos sistemas, unos registros se conectan a otros mediante punteros lógicos, comenzando y finalizando en la entidad considerada como principal. Evidentemente, este tipo de conexiones, se excluyen (por omisión) todos los tipos de registros no deseados.

1.2.4. BASES DE DATOS DOCUMENTALES.

Existe otro tipo de bases de datos que guardan textos completos, éstas son las bases de datos documentales, y en ellas, los registros, en lugar de ser el equivalente a una ficha, son un documento completo, por ejemplo una carta, un plano, un esquema eléctrico, etc.

1.3. ESTRUCTURAS Y OPERACIONES DE UNA BASE DE DATOS.

La base de datos más conocida y más utilizada actualmente (sobre todo en los centros educativos) es Microsoft Access en sus distintas versiones (Access 97, 2.000,…), por lo tanto vamos a analizar la estructura de la base de datos Microsoft Access y operaciones que podemos realizar con la misma.

La estructura de Access está formada por cuatro elementos fundamentales:

Tablas.

Consultas.

Informes.

Formularios.

Además Access cuenta con otros dos elementos muy útiles como Macros y Módulos de Visual Basic.

Cualquier base de datos tiene la información dividida en registros (los datos completos de un proveedor, de un empleado, de un cliente o de un alumno). Cada registro está formado por campos (el nombre, el teléfono, la población, etc.).

Dentro del archivo, podemos dividir los campos en secciones o tablas; podemos ver, agregar y actualizar datos de la tabla a través de formularios.

También se puede buscar y recuperar sólo los datos que deseemos por medio de consultas; y podemos analizar o imprimir con un diseño específico por medio de informes.

Los mismos datos introducidos en una tabla, podemos verlos en varias ubicaciones (consultas, formularios o informes) para ser utilizados según unas necesidades.

Otra de las ventajes de Access es la posibilidad de extraer datos de diferentes tablas en una consulta, con ello se evita la repetición de datos.

También nos facilita crear un formulario para ver con un buen diseño los datos de una tabla. Desde un formulario se pueden modificar los datos o añadir fórmulas.

Cuando activamos Access, lo primero que vamos a encontrar es una ventana con varias opciones:

– Base de datos en blanco.

– Asistente para bases de datos.

– Abrir una base de datos existente.

Al principio, se supone que no tenemos creada ninguna base de datos, con lo cual es primer paso a seguir es crearla (para ello, el propio programa, lo que hace es guardarla). Para carear una nueva base de datos, daremos los siguientes pasos:

1. Seleccionar la opción”Base de datos en blanco”/ Aceptar.

2. Access nos pregunta cuál será el nombre de nuestra base de datos y el lugar en que se guardará:

– En “Guardar en” seleccionaremos dónde queremos guardarla (Mis documentos, C:\>, A:\>,…).

– En “Nombre e Archivo” escribiremos el nombre que queramos darle a la base de datos.

– Pulsamos sobre el botón Crear.

2. SISTEMAS DE GESTIÓN DE BASES DE DATOS: FUNCIONES Y TIPOS.

2.1. CONCEPTO Y FUNCIONES DE UN SISTEMA DE GESTIÓN DE BASES DE DATOS (SGBD).

Un Sistema de Gestión de Bases de Datos (SGBD) es un programa de ordenador que permite administrar la información estructurada, es decir, información compleja formada por muchas unidades de información sencillas.

Las funciones más importantes que puede realizar un SGBD son: almacenar, modificar, ordenar, consultar y generar informes, todo ello a partir de los datos iniciales. De esta manera, los programas de este tipo permiten organizar toda la información que una determinada organización necesita manejar, ofreciendo las utilidades necesarias para su máximo aprovechamiento.

Si por ejemplo el bibliotecario no dispusiera de este sistema de gestión, debería crear al menos dos ficheros diferentes (informáticos o manuales) uno para los datos colocados por autores y otro para los datos colocados por títulos. Además, si quisiera introducir datos nuevos debería molestarse en ir colocando de nuevo las fichas, en borrar los datos erróneos y en contar una a una las fichas de los libros de matemáticas o de los libros prestados.

Con el SGBD basta con crear la base de datos (un único fichero), es decir, introducir los datos de forma ordenada y estructurada, y después das las órdenes oportunas para efectuar las consultas y modificaciones que necesitemos.

Hay que decir que, normalmente, en informática se designa como base de datos lo que en realidad es un SGBD, por tanto, al decir que Access es una base de datos, en realidad estamos intentando decir que Access es un sistema gestor de bases de datos.

La principal característica de cualquier base de datos es la interrelación existente entre los datos que la componen, de manera que permite a un usuario acceder a uno de ellos por múltiples caminos, utilizando claves diferentes según el caso. Existen diferentes tipos de bases de datos, aunque la más extendida es la base de datos relacional.

Se basa en la presentación de los datos en forma de tablas bidimensionales admitiendo cierta redundancia de los mismos.

2.2. TIPOS DE SISTEMAS DE GESTIÓN DE BASES DE DATOS.

Existen muchos tipos de sistemas de gestión de bases de datos (jerárquicas, en red, documentales,… ya vistas anteriormente), aunque en este epígrafe nos centraremos un poco más en el estudio de las Bases de Datos Relacionales por ser las más utilizadas (por ejemplo, Microsoft Access).

2.2.1. SISTEMA DE GESTIÓN DE BASE DE DATOS RELACIONAL.

Una base de datos relacional estructura la información en dos tipos de elementos u objetos básicos: las entidades y las relaciones. Las entidades contienen aquellos elementos que forman una unidad física real. Por ejemplo, una entidad sería un libro, un autor, un producto de un supermercado, una película de vídeo, mientras que las relaciones representan cómo dos o más entidades se relacionan entre sí. Por ejemplo, un producto de un supermercado es distribuido por un determinado proveedor, un libro lo escribe un autor o versa sobre una determinada materia.

En resumen, con un modelo relacional podemos expresar todas aquellas entidades que forman lo que queremos representar y la relación que hay entre ellas.

Veamos las entidades y sus atributos, así como, las relaciones y sus atributos.

A. ENTIDADES Y SUS ATRIBUTOS.

Como se ha comentado anteriormente, las entidades constituyen todos los elementos que existen en el mundo que estamos representando. Por ejemplo, si estamos representando una biblioteca, tendremos entidades como libaros, autores, materias, salas de lectura, estanterías, etc.

Las entidades para un SGBDR (Sistema de Gestión de Base de Datos Relacional) están formadas por los siguientes elementos:

v Nombre de la entidad. Nombre que representa a la entidad y que utilizaremos para referirnos a ella.

v Atributos o características de la entidad. Son todas aquellas propiedades que caracterizan cada una de las entidades del mundo que estamos representando. Por ejemplo, la entidad LIBRO puede tener los siguientes atributos: título, autor, editorial, idioma, número de páginas, etc.

v Existen tres tipos de atributos clasificados según la función que desempeñan en la entidad. Éstos son:

Ø Clave primaria PK (en inglés primary key). Es el identificador de la entidad. Este atributo o conjunto de atributos definen cada elemento de una entidad. Por ejemplo, en una entidad que contiene los profesores de un colegio, cada profesor se identifica por su DNI, por lo tanto, el atributo que contiene el DNI de un profesor es el identificador del mismo o la clave primaria.

Ø Clave ajena FK (en inglés, foreing key). Este atributo permite relacionar o vincular una entidad con otra. Su nombre viene por corresponder con la clave primaria de la entidad que relaciona.

Ø Atributo de detalle de una entidad. Los atributos de este tipo contienen la información de detalle que caracteriza a los elementos de una entidad, por ejemplo, en una entidad que contiene personas, son atributos de detalle el nombre de una persona, la dirección donde vive, el lugar de trabajo o su número de la seguridad social.

Cuando definimos una base de datos, el primer paso a realizar es identificar todas las entidades que queremos representar, es decir, de las que queremos almacenar información, y establecer todas las características que consideramos necesarias para nuestra representación.

Por ejemplo, para la entidad AUTOR podemos definir los siguientes atributos:

v DNI PK-Clave Primaria.

v Nombre y apellidos Atributo.

v Dirección Atributo.

v Ciudad y provincia Atributo.

En cambio, el estado civil del autor no lo ponemos, ya que para nuestro propósito no es un dato que necesitemos. Hay que tener en cuenta que los atributos y las entidades son infinitos, sólo tenemos que utilizar aquellos que proporcionan información que estamos representando. En el ejemplo, para una biblioteca no es necesario el estado civil del autor, en cambio, si estamos preparando una base de datos para un videoclub, es posible que tanto el estado civil como el hecho de tener hijos puede ser importante para así mandar información, por ejemplo, de películas infantiles.

B. RELACIONES. ATRIBUTOS DE RELACIÓN.

Expresan las relaciones existentes entre las distintas entidades definidas en el mundo que estamos representando. Siguiendo el ejemplo de la biblioteca, un libro lo escriben autores, trata sobre una determinada materia o está ubicado un una determinada sala del edificio de la biblioteca.

Las relaciones, al igual que las entidades, tienen un atributo que las caracteriza, que se conoce como cardinalidad de una relación. La cardinalidad de una relación expresa la cantidad de veces que se puede dar una relación. Por ejemplo, un libro puede tener varios autores, pero sólo un título. Un aula tiene muchos alumnos, un profesor imparte clase en varias aulas, pero sólo una asignatura, etc.

Cuando expresamos la cardinalidad de una relación, sólo es necesario indicar si puede darse cero veces, una vez o muchas veces, sin indicar el número de ellas.

Por ejemplo, un LIBRO lo escribe un AUTOR, y un AUTOR escribe muchos LIBROS. Este ejemplo gráficamente lo representaríamos así: