Modelo relacional
Gestión de datos
En todas las aplicaciones de gestión es necesario almacenar datos con el fin de reutilizarlos de diferentes formas según sea preciso. La mayor parte de los sistemas operativos (MS/DOS, UNIX, VMS, GCOS...) proporcionan herramientas que permiten llevar a cabo este almacenamiento. Estas aplicaciones de software generan archivos basándose en diferentes principios.
1. Generalidades sobre los archivos
Un archivo informático es un conjunto de datos de la misma naturaleza (texto, código ejecutable, datos...), que se identifica mediante un nombre y se guarda en un soporte físico (disco duro, disquete, cinta, CD-ROM...).
Un archivo puede tener diferentes funciones:
-
archivo de programa: contiene código que puede ser ejecutado por el sistema operativo.
-
archivo de texto: contiene caracteres ASCII.
-
biblioteca de funciones: contiene código ejecutable que puede ser utilizado por un programa.
-
archivo de periférico: permite el direccionamiento de los periféricos (UNIX).
-
archivo de datos: permite almacenar información generada por una aplicación, etc.
Los archivos de datos se distinguen según su utilidad en el seno de la aplicación, marcando el tipo de archivo. Este tipo permitirá seleccionar a la vez el soporte físico del archivo y su organización.
Tipos de archivos de datos
Los archivos permanentes contienen los datos básicos de la aplicación....
El modelo relacional
Una base de datos relacional es una colección de datos relacionados mediante tablas lógicas, siendo una tabla un conjunto de filas y columnas.
Los sistemas de gestión de bases de datos relacionales (RDBMS, Relational Database Management System) administran de forma independiente el nivel lógico (objetos o entidades) y el nivel físico (archivos).
El éxito de los sistemas RDBMS procede fundamentalmente de esta característica. Con estos sistemas, el usuario solamente gestiona el nivel lógico, lo que proporciona una gran simplicidad a la gestión de los datos, incluso en el caso de usuarios con pocos conocimientos informáticos.
1. Conceptos y definiciones
El modelo relacional se basa en conceptos básicos sencillos (dominio, relación, atributo) a los que se aplican reglas precisas.
La implementación de la base de datos se facilita mediante un lenguaje declarativo (no procedimental) sencillo, basado en la lógica de conjuntos.
a. Dominio
Es un conjunto de valores caracterizado por un nombre.
Cardinalidad
Es el número de elementos de un dominio.
Ejemplo
El diccionario de datos del análisis de una aplicación de gestión comercial puede incluir, entre otras cosas, especificaciones sobre la gestión de los estados de los pedidos o los números de orden que se deseen visualizar. El modelo relacional traducirá estas especificaciones...
Álgebra relacional
Se trata de un método de extracción de datos que permite manipular tablas y columnas. Su principio se basa en la creación de tablas nuevas (tablas de resultados) a partir de las tablas existentes; estas tablas nuevas serán objetos que podrán emplearse de forma inmediata.
Los operadores del álgebra relacional que permiten crear tablas de resultados se basan en la teoría de conjuntos.
1. Operadores
a. Unión
La unión entre dos relaciones con la misma estructura (grado y dominios) proporciona una tabla resultante con la misma estructura y cuyos elementos son el conjunto de los elementos diferentes de las dos relaciones iniciales.
Ejemplos
Sean las tablas CLIOESTE y CLICENTRO:
Clientes de las dos regiones:
CLIENTES=CLIOESTE CLICENTRO
b. Intersección
La intersección entre dos relaciones de la misma estructura (grado y dominios) proporciona una tabla resultante de la misma estructura y cuyos elementos son el conjunto de los elementos comunes a ambas relaciones iniciales.
Ejemplo
Los clientes comunes a las dos regiones son:
CLICOMUN=CLIOESTE CLICENTRO
c. Diferencia
La diferencia entre dos relaciones con la misma estructura (grado y dominios) proporciona una tabla resultante con la misma estructura y cuyos elementos son el conjunto de los elementos de la primera relación que no se encuentran en la segunda relación.
Notación: Rx = R1 - R2
Ejemplo
Los clientes que solo pertenecen a la región OESTE son:
CLIOESTESOLO=CLIOESTE - CLICENTRO
d. Restricción
La restricción de acuerdo con una condición produce, a partir de una relación, otra relación con el mismo esquema y que solo contiene los elementos de la relación inicial que cumplen la condición.
Notación: Rx = σ (condición) R1
La condición se expresa como sigue:
[NOT] [(]atributo operador valor [)] [{AND/OR}condición]
operador |
un operador de comparación: =, <>, >, <, >=, <= |
valor |
una constante u otro atributo. |
Ejemplos
Clientes de ORENSE:
CLIORENSE=σ(DIRECCION="ORENSE")CLIOESTE
Artículos de la serie AB:
ART1=σ(REFART>="AB" AND REFART<"AC")ARTICULOS
Alfombras "baratas":
ART2=σ(PRECIO<=1000)ART1
e. Proyección
La proyección de una relación...