Tema1 Modelorelacional
Dr. Diego Lz. de Ipiña Gz. de Artaza
http://paginaspersonales.deusto.es/dipina
http://asignaturas.deusto.es/basesdedatos/
Estructura de datos relacional
Modelo relacional fue ideado por Codd en
1969-70
Primeros prototipos:
Sistema R (IBM)
INGRES (Berkeley)
DB2 (IBM)
ORACLE
Modelo relacional es hoy en día el modelo de
base de datos más comúnDefinición relación
Una relación R sobre un conjunto de dominios
D1, D2, ..Dn se compone de dos partes:
Cabecera: formada por un conjunto de atributos
o pares atributo-dominio, tales que cada atributo
Ai corresponde a uno y sólo uno de los dominios
Dj
{(A1:D1), (A2:D2), … (An, Dn)}
Cuerpo: está formado por un conjunto de tuplas
Tupla formada por un conjunto de pares atributo-valor
Hay uno de estos pares atributo-valor (Aj:vij) por cada
atributo Aj de la cabecera
{(A :v
1
i1), (A2:vi2), … (A3, vin)}
Ejemplo relación
Para cada par (Aj:vij), vij es un valor del dominio Dj,
asociado al atributo Aj
Relación PIEZA:
m=cardinalidad (varía con el tiempo)=número de tuplas
n=grado (no varía)=número columnas
P#
NOMP
COLOR
PESO
CIUDAD
P1
Tuerca
Rojo
12Londres
P2
Perno
Verde
17
Vitoria
Dominios: números de pieza, nombres pieza, colores, pesos piezas y
sitios donde se almacenan
Grado: 5
Cada fila es una tupla, cardinalidad: 2
Las relaciones de grado uno se denominan unarias, las de grado 2
binarias y las de grado “n”, n-arias.
Propiedades relaciones
En una relación no existen tuplas repetidas:
1.
relación <--> conjunto matemáticoLas tuplas no están ordenadas
2.
Conjunto matemático no tiene orden
Los atributos no están ordenados
3.
Cabecera es un conjunto matemático
Todos los valores de los atributos son
atómicos
4.
En una celda nunca hay un conjunto de valores
Las relaciones están NORMALIZADAS
Dominios y atributos
Dominio: conjunto de valores legales para un
atributo
Atributo: uso de undominio, un valor que se
extrae de un dominio
Relación COMPONENTE:
P#_PRINCIPAL
P#_SECUNDARIA
CANTIDAD
P1
P2
2
P1
P4
4
Tiene tres atributos: nº componente principal, nº
componente secundario y cantidad, pero sólo dos
dominios: nº pieza y cantidad
Claves I
Dado un subconjunto K de atributos de
la relación R, K es una CLAVE
CANDIDATA de R si y sólo si se cumple:
Unicidad: no hay 2tuplas de R que tengan
el mismo valor de K
Es mínima: ningún subconjunto de K tiene
la propiedad de unicidad
Claves II
Relación PROVEEDOR
S#
NOMS
ESTADO
CIUDAD
S1
Salazar
20
Bilbo
S2
Jaramill
o
10
Donostia
S3
Bernal
30
Gasteiz
Pueden ser claves candidatas: número de
proveedor (S#) y nombre (NOMS)
De entre las claves candidatas se elige una a
la que se le llama CLAVEPRIMARIA, p.e. S#
Una clave candidata no primaria como NOMS
recibe el nombre de CLAVE ALTERNA.
Claves III
Criterios para la elección de una clave
candidata como primaria:
Estabilidad: hay algunas claves menos propensas
a modificaciones en sus valores (ej. DNI más
estable que dirección)
Facilidad de uso: más fácil clave numérica corta
que alfanumérica larga (ej. EMP# vs. NOMEMP)Fiabilidad: ver si clave tiene dígitos de
validadación o mecanismos de autodetección o
correción de errores
Universalidad: claves cuyo uso y conocimiento
esté extendido (DNI)
Reglas de Integridad
En un Base de Datos relacional
(RDBMS) se definen dos tipos de
integridad especiales:
Integridad de la entidad
Integridad referencial
Regla 1ª: Integridad de la
entidad
Ningúncomponente de la clave primaria puede tener
valor nulo
La identificación única de una tupla es posible a
través de la clave primaria, si se permiten valores
nulos implicaría la posibilidad de dos entidades no
distinguibles entre si.
Relación EMP(NE, ND, SUELDO)
NE (número de empleado – clave primaria), ND (número de
departamento) y SUELDO (sueldo)
Si NE tuviera valores nulos tendríamos...
Regístrate para leer el documento completo.