2. Unidad 3 – Objetivos
Terminología del modelo relacional.
Como usar tablas para representar datos .
Conexión entre relaciones matemáticas y
relaciones en el modelo relacional.
Propiedades de las relaciones en la base de
datos.
Como identificar CK, PK, y FKs.
Significado de integridad de entidad y
integridad referencial.
Beneficios y desventajas de las vistas.
2 de 25
3. Terminología del Modelo Relacional
Una relación es una tabla con columnas y filas.
– Solo aplica a la estructura lógica de la base de
datos, no a la estructura física.
Un atributo es nombrado columna en una
relación.
Dominio es un conjunto de valores permitidos
para uno o más atributos.
3 de 25
4. Terminología del Modelo Relacional
Tupla es una fila de una relación.
Grado es el número de atributos en una relación.
Cardinalidad es el número de tuplas en una
relación.
Una base de datos relacional es una colección de
relaciones normalizadas con nombres de relación
distintos.
4 de 25
8. Definición Matemática de relación
Considere dos conjuntos, D1 & D2, donde D1 = {2, 4}
y D2 = {1, 3, 5}.
Producto cartesiano, D1 × D2, es un conjunto de
todos los pares ordenados, donde el primer elemento
es miembro de D1 y el segundo elemento es miembro
de D2.
D1 × D2 = {(2, 1), (2, 3), (2, 5), (4, 1), (4, 3), (4, 5)}
Una manera alternativa es encontrar todas las
combinaciones de elementos primero de D1 y
segundo de D2. 8
9. Definición Matemática de relación
Cualquier subconjunto del producto cartesiano es
una relación; e.g.
R = {(2, 1), (4, 1)}
Puede especificar que pares están en relación con
una condición de selección; e.g.
– El segundo elemento es 1:
R = {(x, y) | x ∈D1, y ∈D2, and y = 1}
– El primer elemento es siempre el doble del
segundo:
S = {(x, y) | x ∈D1, y ∈D2, y x = 2y}
9 de 25
10. Definición Matemática de relación
Considere tres conjuntos D1, D2, D3 con el
Producto Cartesiano D1 × D2 × D3; e.g.
D1 = {1, 3} D2 = {2, 4} D3 = {5, 6}
D1 × D2 × D3 = {(1,2,5), (1,2,6), (1,4,5),
(1,4,6), (3,2,5), (3,2,6), (3,4,5), (3,4,6)}
Cualquier subconjunto de esas tripletas
ordenadas en una relación
10 de 25
11. Definición Matemática de relación
El producto cartesiano de n conjuntos (D1, D2, . .
., Dn) es:
D1 × D2 × . . . × Dn = {(d1, d2, . . . , dn) | d1 ∈D1, d2 ∈D2, . . .
, dn∈Dn}
usualmente escrito como:
n
XDi
i=1
Cualquier subconjunto de n-tuplas de este
producto cartesiano es una relación en los n
conjuntos.
11 de 25
12. Relaciones en la base de datos
Esquema de relación - Relation schema
– Nombre de la relación definida por un
conjunto de atributos; pares nombre –
dominio (valor).
– Ejemplo: {(branchNo: B005, street: 22 Deer
Rd, city: London, postcode: SW14EH)}
Esquema de base de datos relacional -
Relational database schema
– Conjunto de esquemas de relación cada uno
con distinto nombre.
12 de 25
13. Propiedades de las relaciones
El nombre de una relación es distinto de todas
las otras relaciones en el esquema de base de
datos relacional.
Cada celda de una relación tiene exactamente
un valor atómico.
Cada atributo tiene un nombre distinto.
Losvalores de un atributo son todos de un
mismo dominio.
13 de 25
14. Propiedades de las relaciones
Cada tupla es distinta no existen tuplas
duplicadas.
El orden de los atributos no tiene significado.
El orden de las tuplas no tiene significado,
teóricamente.
14 de 25
15. Claves relacionales
Clave súper
– Un atributo o conjunto de atributos que únicamente
identifican una tupla dentro de una relación.
Clave candidata
– Sea K un conjunto de atributos de una relación R;
entonces K es una clave candidata de R si y solo si:
» Unicidad: Jamás ningún valor valido de R contiene dos tuplas distintas con el
mismo valor de K. Esto también es conocido como singularidad
» Irreductibilidad: Ningún subconjunto propio de K tiene la propiedad de
unicidad.
15 de 25
16. Claves relacionales
Clave Primaria - Primary Key
– Clave candidata seleccionada para identificar las
tuplas de manera única dentro de la relación.
Claves Alternativas - Alternate Keys
– Claves candidatas que no son seleccionadas para ser
la llave primaria.
Clave Foranea - Foreign Key
– Atributo o conjunto de atributos dentro de una
relación que coincide con la clave candidata de
alguna otra relación.
16 de 25
17. Restricciones de Integridad
Integrity Constraints
Nulo - Null
– Representa el valor para un atributo que es
actualmente desconocido o no aplicable para la
tupla.
– Se Ofrece con datos incompletos o
excepcionales.
– Representa la ausencia de un valor y no es el
mismo que cero o espacios, que son valores.
17 de 25
18. Restricciones de Integridad
Integrity Constraints
Integridadde Entidad
– En una relación base, ningún atributo usado
como llave primaria puede ser nulo.
Integridad Referencial
– Si llaves foráneas existen en una relación,
cualquiera de los valores de la llave foránea
debe coincidir con un valor de clave
candidata de alguna tupla en su relación
principal o el valor de clave foránea debe ser
totalmente nula.
18 de 25
19. Restricciones de Integridad
Integrity Constraints
Restriccionesgenerales
– Reglas adicionales especificadas por
usuarios o administradores de la base de
datos que definen o restringen algún
aspecto de la empresa.
19 de 25
20. Vistas - Views
Relación Base - Base Relation
– Nombre de la relación correspondiente a
una entidad en el esquema conceptual, cuyas
tuplas se almacenan físicamente en la base
de datos.
Vistas
– Resultado dinámico de una o más
operaciones relacionales operando en
relaciones base para producir otra relación.
20 de 25
21. Vistas
Una relación virtual que no necesariamente
existen realmente en la base de datos sino que se
produce a petición, al momento de la solicitud.
Elcontenido de una vista se define como una
consulta en una o más relaciones base.
Las vistas son dinámicos, lo que significa que los
cambios realizados a las relaciones base que
afectan a los atributos de vista se reflejan
inmediatamente en la vista.
21 de 25
22. Propósitos de las vistas
Proporciona mecanismo de seguridad potente y
flexible al ocultar partes de la base de datos a
determinados usuarios.
Permite a los usuarios acceder a los datos de
una forma personalizada, de manera que los
mismos datos se puede verse por diferentes
usuarios en diferentes formas, al mismo
tiempo.
Puede simplificar operaciones complejas sobre
las relaciones base. 22 de 25
23. Actualizando Vistas
Todas las actualizaciones de una relación base
debe ser inmediatamente reflejadas en todas
las vistas que hacen referencia a la relación
base.
Sila vista se actualiza, la relación base
subyacente debe reflejar el cambio.
23 de 25
24. Actualizando Vistas
Existen restricciones sobre los tipos de
modificaciones que se pueden hacer a través de
las vistas:
– Las actualizaciones se permiten si la consulta
incluye una relación de una sola relación base y
contiene una clave candidata de la relación base.
– Las actualizaciones no permiten la participación
de múltiples relaciones base.
– Las actualizaciones no permiten la participación
de las operaciones de agregación o agrupación.
24 de 25
25. Actualizando Vistas
Las clases de vistas son definidas como:
– Teóricamente no actualizable.
– Teóricamente actualizable.
– Parcialmente actualizable.
25 de 25