Matt Codd (0000-0000) Cine y Televisión
1 Un visitante nos comenta En la década de los 80 comenzaron a aparecer numerosos SGBD que se anunciaban como "relacionales". Sin embargo estos sistemas carecían de muchas características que se consideran importantes en un sistema relacional, perdiendo muchas ventajas del modelo relacional. Como ejemplo extremo de esto "sistemas relacionales" eran simplemente sistemas que utilizaban tablas para almacenar la información, no disponiendo de elementos como claves primarias, etc.
En 1984 Codd publicó 12 reglas que un verdadero sistema relacional debería de cumplir. En la práctica algunas de ellas son difíciles de realizar.
Un sistema podrá considerarse "más relacional" cuanto más siga estas reglas.
REGLA 0
Para que un sistema se denomine sistema de gestión de bases de datos relacionales, este sistema debe usar (exclusivamente) sus capacidades relacionales para gestionar la base de datos.
REGLA 1: REGLA DE LA INFORMACIÓN
Toda la información en una base de datos relacional se representa explícitamente en el nivel lógico exactamente de una manera: con valores en tablas.
- Por tanto los metadatos (diccionario, catálogo) se representan exactamente igual que los datos de usuario.
- Y puede usarse el mismo lenguaje (ej. SQL) para acceder a los datos y a los metadatos (regla 4)
- Un valor posible es el valor nulo, con sus dos interpretaciones:
- Valor desconocido (ej. dirección desconocida)
- Valor no aplicable (ej. empleado soltero no tiene esposa).
REGLA 2: REGLA DEL ACCESO GARANTIZADO
Para todos y cada uno de los datos (valores atómicos) de una BDR se garantiza que son accesibles a nivel lógico utilizando una combinación de nombre de tabla, valor de clave primaria y nombre de columna.
- Cualquier dato almacenado en una BDR tiene que poder ser direccionado univocamente. Para ello hay que indicar en qué tabla está, cuál es la columna y cuál es la fila (mediante la clave primaria).
- Por tanto se necesita el concepto de clave primaria, que no es soportado en muchas implementaciones. En estos casos, para lograr un efecto similar se puede hacer lo siguiente:
- Hacer que los atributos clave primaria no puedan ser nulos (NOT NULL).
- Crear un índice único sobre la clave primaria.
- No eliminar nunca el índice.
REGLA 3: TRATAMIENTO SISTEMÁTICO DE VALORES NULOS
Los valores nulos (que son distintos de la cadena vacía, blancos, 0, ...) se soportan en los SGBD totalmente relacionales para representar información desconocida o no aplicable de manera sistemática, independientemente del tipo de datos.
- Se reconoce la necesidad de la existencia de valores nulos, para un tratamiento sistemático de los mismos.
Para Ver la filmografía completa de Matt Codd haz click aquí