Unidad iii -_terminologia

25
Unidad 3 El Modelo Relacional Terminología

Transcript of Unidad iii -_terminologia

Unidad 3

El Modelo Relacional Terminología

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

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

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

Instancias de las relaciones Branch y Staff

5 de 25

Ejemplos de dominios en atributos

6 de 25

Terminología alternativa para el modelo relacional

7 de 25

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

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

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

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

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

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.

Los valores de un atributo son todos de un mismo dominio.

13 de 25

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

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

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

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

Restricciones de Integridad Integrity Constraints

Integridad de 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

Restricciones de Integridad Integrity Constraints

Restricciones generales – 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

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

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.

El contenido 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

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

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.

Si la vista se actualiza, la relación base subyacente debe reflejar el cambio.

23 de 25

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

Actualizando Vistas

Las clases de vistas son definidas como: – Teóricamente no actualizable. – Teóricamente actualizable. – Parcialmente actualizable.

25 de 25