Fundamentos del Modelo Relacional de Bases de Datos
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 4,39 KB
Introducción al Modelo Relacional
- En 1970, E.F. Codd definió el Modelo Relacional.
- Las Reglas de Codd establecen las características que debe cumplir un sistema para ser considerado un modelo relacional.
- En 1978, QBE (Query By Example) fue desarrollado por IBM, siendo un lenguaje y un SGBD.
- En 1979, Oracle lanzó el primer modelo relacional comercial que funcionaba con SQL.
- Posteriormente, IBM desarrolló SQL/DS y DB2.
- A finales de los 70:
- Ingres (Universidad de Berkeley)
- → Postgres
- → PostgreSQL (software libre/actual)
- SQL (Structured Query Language):
- Se normaliza en 1989 (SQL-89)
- SQL-92
- SQL-1999
- SQL-2003
Estática del Modelo Relacional
- Entidad: Objeto sobre el que recogemos información.
- Atributo: Características de las entidades. Un atributo A solo toma valores en un dominio D. A este dominio se le llama Dominio Subyacente del atributo A. En el modelo relacional, un atributo puede no tomar ningún valor en el dominio; se llama atributo con valor nulo.
- Relaciones: Se pueden representar mediante una tabla. Representa un conjunto de entidades o relaciones entre ellas.
- Grado: Número de atributos de una relación (columnas).
- Cardinalidad: Número de filas o tuplas.
- Dominios: Conjunto de valores finitos, homogéneos y atómicos.
- Ejemplos de dominios:
- Por intensión o comprensión: {nº entre 12 y 18}
- Por extensión o enumeración: {12, 13, 14, 15, 16, 17, 18}
Definición Formal de Relación
Una relación se define como un conjunto que incluye un esquema, una cabecera y un cuerpo de relación. Una relación definida sobre los dominios D1…Dn, no necesariamente distintos, se define como un subconjunto del producto cartesiano de los n dominios.
Distinguimos entre:
- Esquema de relación (intensión): Define la estructura de la tabla.
- Cuerpo de relación (extensión): Conjunto de ocurrencias o tuplas que varían en el tiempo.
Restricciones en el Modelo Relacional
Conjunto de reglas que limitan la funcionalidad del modelo.
Restricciones Inherentes
Forman parte de la definición del modelo relacional y vienen ya implementadas en el sistema:
- No puede haber dos tuplas iguales.
- El orden de las tuplas y de los atributos no es significativo.
- Cada atributo tiene un único valor en el dominio.
- Integridad de entidad: Ningún atributo que forma parte de la clave primaria de una relación puede tener valor nulo.
Restricciones de Usuario
Impuestas por las características del sistema:
- Clave: Campos o atributos que identifican cada uno de los registros del fichero/fila/tupla. Una clave puede estar formada por varios atributos. Debe ser el conjunto mínimo necesario para identificar esos registros.
- Clave candidata: Conjunto mínimo de atributos que permiten identificar cada tupla de una relación.
- Clave primaria: La clave candidata que el diseñador elige para la definición de las tablas.
- Clave alternativa: El resto de claves candidatas que no elige el diseñador como clave primaria.
- Clave ajena: Conjunto de atributos de una relación que coinciden con los atributos que son clave primaria de otra relación diferente.
- Integridad referencial: Si una relación (R2) tiene un conjunto de atributos que coinciden con la clave primaria de una relación (R1), todos los valores de R2 deben coincidir con los de R1 o ser nulos. Si R2 tiene clave ajena con R1, los valores de R2 deben coincidir con los de R1 o ser nulos.