Académique Documents
Professionnel Documents
Culture Documents
A la hora de operar con los datos, en lugar de hacerlo sobre registros, acta
sobre la relacin (tabla).
Las bases de datos relacionales no permiten ni grupos repetitivos ni apuntadores
en los niveles externo y conceptual, en el nivel interno el sistema tiene libertad
para usar cualquier estructura que desee.
I.E.S. Bezmiliana
CODIGO CONCEPTO
11
Teclado
22
Impresora
33
Monitor
b) Tabla de ARTICULOS
PRECIO
16.00
280.00
199.00
18.00
210.00
48
Clave primaria. Es posible que una relacin posea ms de una clave candidata,
en ese caso, se escoge una de ellas como clave primaria y el resto se denominan
claves alternativas. En la prctica la eleccin de la clave primaria suele ser
sencilla. Toda relacin, sin excepcin, tiene una clave primaria y suele
representarse subrayando y/o aadiendo el carcter # al atributo (o conjunto de
atributos) correspondiente. Por ejemplo: Artculos( cdigo#, concepto)
I.E.S. Bezmiliana
49
Dominios
Clave primaria
Relacin
NIF#
1111
3333
5555
7777
NOMBRE
Manuel
Gabriel
Marco
Carlos
LOCALIDAD
Mlaga
Granada
Mlaga
Cdiz
Tuplas
Cardinalidad
Atributos
Grado
Ahora podemos dar una definicin ms formal de una relacin: Una relacin R
sobre un conjunto de dominios D1,D2,...,Dn (no necesariamente distintos) se compone
de dos partes: una cabecera o esquema, y un cuerpo.
- La cabecera o esquema est formado por un conjunto fijo de atributos, o
mejor dicho, de pares atributo-dominio {(A1:D1), (A2:D2),...,(An:Dn)}
- El cuerpo est formado por un conjunto de tuplas (n-tuplas) que vara con el
tiempo. Cada tupla a su vez est formada por un conjunto de pares atributovalor: {(A1:vi1), (A2:vi2),...,(An:vin)} (i=1,2,...,m donde m es el nmero de
tuplas del conjunto). Cada vij es un valor del dominio Dj asociado al atributo
Aj.
Adems, las relaciones cumplen las siguientes propiedades:
Estas propiedades son las que marcan la diferencia entre una tabla y una relacin, ya
que una tabla presenta las filas y las columnas en un orden, del cual carecen las
relaciones. Por otro lado, una tabla podra contener filas repetidas. De todos modos,
como dijimos anteriormente, es muy comn utilizar el trmino tabla para referirse a una
relacin.
I.E.S. Bezmiliana
50
Integridad referencial:No
concordancia.
deben
existir
valores
de
clave
ajena
sin
Dicho de otro modo, si una relacin tiene una clave ajena que referencia a otra
relacin (o a ella misma), cada valor de la clave ajena tiene que ser igual a un valor
de la clave principal de la relacin a la que referencia, o bien, ser completamente
nulo.
El diseador de la base de datos deber poder especificar qu operaciones han de
rechazarse y cules han de aceptarse, y en este caso, qu operaciones de compensacin
hay que realizar para mantener la integridad de la base de datos. Para ello el diseador
debe plantearse tres preguntas por cada clave ajena:
1. Puede aceptar nulos esa clave ajena? Por ejemplo, (tomando como referencia las
relaciones PROVEEDORES, ARTICULOS, PRECIOS) tiene sentido la existencia
de un precio cuyo proveedor se desconoce? Evidentemente, no. En algunos casos
esta respuesta podra ser distinta, por ejemplo, en una base de datos con las
relaciones EMPLEADOS y PROYECTOS, podra existir un empleado no asignado
de momento a un proyecto.
2. Qu deber suceder si se intenta eliminar una tupla referenciada por una clave
ajena? Por ejemplo, si se intenta eliminar un proveedor del cual existe algn precio
de artculo. En general, para estos casos existen por lo menos tres posibilidades:
I.E.S. Bezmiliana
51
R1
I.E.S. Bezmiliana
52
Nivel
externo
Nivel
conceptual
Nivel
interno
Sublenguaje de
datos
Sublenguaje de
datos
Area de trabajo
del usuario
Area de trabajo
del usuario
Submodelo relacional
de datos (vistas)
Submodelo relacional
de datos (vistas)
Modelo relacional de
datos (tabla base)
Esquema de
almacenamiento
Base de datos
El nivel interno, donde cada tabla de base se representa por un archivo distinto que
puede tener cualquier nmero de ndices asociados.
Un sublenguaje de datos para el manejo de los datos del sistema relacional. Con
estos lenguajes, llamados de especificacin, es posible procesar una tabla entera
cada vez que se ejecuta una operacin de E/S. Los lenguajes que operan registro a
registro se llaman lenguajes de navegacin, como son los jerrquicos y de red. Los
sublenguajes de datos se pueden clasificar en dos grupos:
I.E.S. Bezmiliana
53
I.E.S. Bezmiliana