bases de datos i

17
CAPÍTULO 2 EL MODELO RELACIONAL Guillermo Baquerizo II Término 2012 BASES DE DATOS I

Upload: cutter

Post on 23-Feb-2016

55 views

Category:

Documents


0 download

DESCRIPTION

BASES DE DATOS I. CAPÍTULO 2 EL MODELO RELACIONAL Guillermo Baquerizo II Término 2012. Elaborado por: GABP. Conceptos Básicos. El modelo relacional está basado en el concepto lógico de relación, la cual se representa físicamente en forma de una tabla. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: BASES DE DATOS I

CAPÍTULO 2EL MODELO RELACIONAL

Guillermo BaquerizoII Término 2012

BASES DE DATOS I

Page 2: BASES DE DATOS I

Conceptos BásicosEl modelo relacional está basado en el concepto lógico de relación, la cual se representa físicamente en forma de una tabla.Relación.- Está compuesta de atributos (columnas) y tuplas (filas).Atributo.- Es una columna nominada de una relación.Dominio.- Es un conjunto de valores permitidos para uno o más atributos.

Elaborado por: GABP

Page 3: BASES DE DATOS I

Conceptos BásicosTupla.- Es una fila o registro de una relación (tabla).Grado.- Es el número de atributos que contiene una relación.Cardinalidad.- Es el número de tuplas que contiene una relación.

Términos Formales

Opción 1 Opción 2

Relación Tabla EntidadTupla Fila Registro

Atributo Columna Campo

Elaborado por: GABP

Page 4: BASES DE DATOS I

Jerarquía de datosEmpieza con los bits para agruparse y formar

conjuntos de bytes.Los bytes se pueden agrupar para formar un

campo (atributo).Los campos relacionados se pueden agrupar

para formar un registro (tupla).Los registros relacionados pueden formar un

archivo o tabla (relación).Los archivos relacionados se pueden

organizar en una base de datos.

Elaborado por: GABP

Page 5: BASES DE DATOS I

EjemplobranchNo Street City PostCode

B005 22 Deer Rd London SW1 4EHB007 16 Argyll St Aberdeen AB2 3SUB003 163 Main St Glasgow G11 9QXB004 32 Manse Rd Bristol BS99 1NZB002 56 Clover Dr London NW10 6EU

BRANCHAtributos

Tuplas

Tupla 1: B005, 22 Deer Rd, London, SW1 4EH

Grado: 4 atributos.

Cardinalidad: 5 tuplas.

Dominio de branchNo: B### 1000 posibles combinaciones, tamaño: 4 caracteres.

Dominio de Street: Conjunto de todos los nombres de las calles, tamaño: 25 caracteres.

Elaborado por: GABP

Page 6: BASES DE DATOS I

Conceptos BásicosValor nulo.- Representa un valor para un atributo que actualmente es desconocido o no es aplicable para esa tupla.Integridad de entidad.- En una relación base ningún atributo de una clave principal puede ser nulo.Integridad referencial.- Si hay clave externa en una relación, el valor de la clave externa debe corresponderse con el valor de una clave principal de alguna tupla en su relación de origen.

Elaborado por: GABP

Page 7: BASES DE DATOS I

Conceptos BásicosRestricciones generales.- Son reglas adicionales especificadas por los usuarios o DBAs que definen o restringen algún aspecto de la organización.Clave principal.- Es un atributo o conjunto de atributos que permite identificar las tuplas de forma unívoca dentro de una relación.

Elaborado por: GABP

Page 8: BASES DE DATOS I

Relación MatemáticaSea D1 = {2, 4} y D2 = {1, 3}, el producto cartesiano D1xD2 es el conjunto de todas las parejas ordenadas donde el primer elemento de la pareja es miembro de D1 y el segundo elemento es miembro de D2.

D1xD2 = {(2, 1), (2, 3), (4, 1), (4, 3)}Cualquier subconjunto de este producto cartesiano será una relación matemática R.

Conceptos Básicos

Elaborado por: GABP

Page 9: BASES DE DATOS I

ÁLGEBRA RELACIONALConceptos Básicos

Operaciones UnariasOperaciones entre Conjuntos

Page 10: BASES DE DATOS I

Álgebra relacionalEl álgebra relacional es un lenguaje teórico con operaciones que se aplican a una o más relaciones, con el fin de definir otra relación sin modificar las relaciones originales.

Las cinco operaciones fundamentales en el álgebra relacional son: selección, proyección, producto cartesiano, unión y diferencia entre conjuntos.

Elaborado por: GABP

Page 11: BASES DE DATOS I

Operaciones UnariasSelección (σpredicadoR): Esta operación se

aplica a una única relación R (tabla) y define otra relación que contiene únicamente aquellas tuplas de R que satisfacen la condición (predicado) especificada.

Ejemplo:σsalary>=24000 (Staff)

SL21 John White Manager M 1-Oct-45 30000 B005SG5 Susan Brand Manager F 3-Jun-40 24000 B003

Elaborado por: GABP

Page 12: BASES DE DATOS I

Operaciones Unarias

staffNo fName lName salarySL21 John White 3000SG37 Ann Beech 12000SG14 David Ford 10000SG5 Susan Brand 5000

• Proyección(∏a1,…,anR): Define otra relación que contiene un subconjunto vertical de la relación R, extrayendo los valores de los atributos especificados y eliminando los duplicados.

Ejemplo:∏staffNo, fName, lName, salary(Staff)

Elaborado por: GABP

Page 13: BASES DE DATOS I

Operaciones entre ConjuntosUnión (R S).- La unión de dos relaciones R y S define una relación que contiene todas las tuplas de R y S, eliminándose las tuplas duplicadas. R y S deben ser compatibles con respecto a la unión.Ejemplo:Mostrar todas las ciudades en las que existe una sucursal o un inmueble en alquiler.∏ city(Branch) ∏ city(PropertyForRent) City

LondonAberdeenGlasgowBristol

Elaborado por: GABP

Page 14: BASES DE DATOS I

Operaciones entre ConjuntosDiferencia (R – S).- La diferencia entre conjuntos define una relación compuesta por las tuplas que se encuentren en la relación R pero no en S. R y S deben ser compatibles.

Ejemplo:Mostrar todas las ciudades en las que existe una sucursal, pero no haya inmuebles en alquiler.∏ city(Branch) – ∏ city(PropertyForRent)

CityBristol

Elaborado por: GABP

Page 15: BASES DE DATOS I

Operaciones entre ConjuntosIntersección(R ∩ S).- La operación de intersección define una relación compuesta por el conjunto de todas las tuplas que existen tanto en R como en S. R y S deben ser compatibles.

Ejemplo:Mostrar todas las ciudades en las que exista tanto una sucursal como al menos un inmueble en alquiler.∏ city(Branch) ∩ ∏ city(PropertyForRent)

CityLondonAberdeenGlasgow

Elaborado por: GABP

Page 16: BASES DE DATOS I

Operaciones entre ConjuntosProducto Cartesiano (RxS).- La operación de producto cartesiano define una relación que es la concatenación de cada tupla de la relación R con cada tupla de la relación S.

Ejemplo: Enumerar los nombres y comentarios de todos los clientes que hayan visto un inmueble en alquiler.∏clientNo,fName,lName(Client) x ∏ clientNo,propertyNo,comment(Viewing)

Elaborado por: GABP

Page 17: BASES DE DATOS I

Operaciones entre ConjuntosCombinación Natural (R S).- En la operación anterior hay información incorrecta por lo que se debe realizar una operación de selección en las que Client.clientNo=Viewing.clientNoLa combinación natural se realiza entre las 2 relaciones R y S sobre todos los atributos comunes. Del resultado se elimina una de las 2 apariciones de cada atributo común.

(∏ clientNo,fName,lName(Client) ∏ clientNo,propertyNo,comment(Viewing))

Elaborado por: GABP