Sunteți pe pagina 1din 31

EL MODELO

RELACIONAL
Prof. Csar Luza Montero

Introduccin
Diseo de base de datos

MER
MER
MR
MR

Modelo
de datos

Introduccin
Un Modelo de Datos es una herramienta que puede ser
usada para especificar (describir): Objetos (entidades) del
mundo real, Relaciones entre ellos, Restricciones sobre
ellos, y la Manipulacin de ellos.
Algunos modelos de datos:
ModeloJerrquico
Jerrquico
Modelo
ModeloRed
Red
Modelo
ModeloRelacional
Relacional
Modelo

ModeloEntidad
Entidad
Modelo
relacin
relacin
ModeloOrientado
Orientadoaa
Modelo
Objetos
Objetos

Contenido
El Modelo
Relacional

Definicin

Elementos

Reglas

Ejemplos

Definicin
El Modelo Relacional fue

introducido por Edgard F.


Codd en 1970.
Con su trabajo "Un modelo
relacional de datos para
grandes bancos de datos
compartidos" ("A Relational
Model of Data for Large
Shared Data Banks")
publicado en ACM.

Edgar F. Codd (1923-2003)

Association for
Computing
Machinery

Definicin
Los datos se representan

como una coleccin de


relaciones (Tablas).
Podemos decir que una
base de datos relacional
consiste de un conjunto
de tablas (relaciones)
relevantes.

Definicin
Este modelo de datos persegua una serie de

objetivos que se resumen en:


Independencia fsica.
Independencia lgica.
Flexibilidad.
Uniformidad.
Sencillez.

Definicin
Independencia fsica.
El modo en el que se almacenan los datos no influye
en su manipulacin lgica y por tanto, los usuarios
que acceden a esos datos no tienen que modificar
sus programas por cambios en el almacenamiento
fsico.
Independencia lgica.

El aadir, eliminar o modificar objetos de la base de


datos no repercute en los programas y/o usuarios
que estn accediendo a subconjuntos parciales de
los mismos (vistas).

Definicin
Flexibilidad.

En el sentido de poder presentar a cada usuario los


datos de la forma en que ste prefiera.
Uniformidad.
Las estructuras lgicas de los datos presentan un
aspecto uniforme, lo que facilita la concepcin y
manipulacin de la base de datos por parte de los
usuarios.
Sencillez.
Las caractersticas anteriores, as como unos
lenguajes de usuario muy sencillos, producen como
resultado que el modelo de datos relacional sea fcil
de comprender y de utilizar por parte del usuario final.

Elementos
Atributos

Nombre de la relacin
ALUMNO
Cdigo

Nombre

Edad

Nota
15

21-990101

JUAN

21

21-872342

MARIA

19

13

21-765349

ALBERTO

18

16

columnas

Cabecera
Tuplas o filas

Elementos
El Dominio de un atributo es el conjunto de

valores que un atributo puede tomar.

Un dominio es usualmente representado por

un tipo
Ejemplos:

Cdigo, su dominio es un char(9) --- Cadena de


caracteres de longitud 9

Nombre, su dominio es un varchar(30) --- Cadena


de caracteres de longitud variable hasta 30
caracteres

Edad, su dominio es un rango de nmeros --- 15 a


90.

Elementos
El esquema (schema) de la relacin o cabecera de

la relacin es el conjunto de los atributos de la


relacin

Ejemplo:

Cabecera (Alumno) = (Cdigo, Nombre, Edad, Nota)


Alumno (Cdigo, Nombre, Edad, Nota)

El Estado (o contenido) de la relacin es el actual

conjunto de tuplas o filas de la relacin.


Un esquema determinado puede tener diferentes

estados en diferentes tiempos.

Elementos
El esquema de una relacin raramente cambia.
Algunos posibles cambios son:
Renombrar un atributo
Borrar un atributo
Aadir un atributo
Borrar el esquema

Elementos
El estado de una relacin puede cambiar

frecuentemente.
Algunos posibles cambios son:

Modificar algunos valores de atributos


Borrar una tupla existente
Insertar una nueva tupla

Elementos
Una Base de datos relacional consiste de un

conjunto de relaciones
Un esquema de base de datos relacional
consiste de un conjunto de esquemas de
relaciones.
Un estado de la base de datos es la data
actualmente en la base de datos.

Un Ejemplo de Base de Datos


Students
SSN

Name

Major

1234

Jeff

CS

2345

Mary

Math

3456

Bob

CS

4567

Wang

EE

Departments
GPA

Name

3.2

CS

N18 EB

EE

Q4 EB

Math

LN2200

Hanson

210 S3

Smith

3.0
2.7
2.9

Location

Biology

Courses

Chairperson
Aggarwal
Sackman

Sections

Name

Course#

CreditHours

Dept

Course#

Section# Semester Instructor

Database

CS432

CS

CS432

01

Fall98

Meng

Database

CS532

CS

CS532

01

Fall98

Meng

Dis. Math

Math314

Math

Math314

02

Fall 97

Hanson

Lin. Alg.

Math304

Math

Math304

01

Spring97

Brown

Reglas de Base Datos Relacional


Regla 1 (First Normal Form Rule).

Ningun atributo multi-valuado es permitido en


una tabla.

Es decir, para cualquier tupla t y atributo A en


una tabla, t[A] debe ser un valor simple
atomico.

Reglas de Base Datos Relacional


Ejemplos de atributos multivaluados:
Employees
SSN

Name

Age

Dependents

123456789

Bob

34

Allen, Ann

234567891

Mary

42

Kathy

345678912

Bill

47

Mike, Susan, David

Otros ejemplos:
El atributo Autores de relacion Libros
El atributo Libros de referencias de una relacion Cursos
El atributo de Hobbies de una relacion Empleados

Reglas de Base Datos Relacional


Regla 2 (The Unique Row Rule).

No hay dos filas en la misma tabla que sean


identicas en cualquier momento dado.
Es decir cada tupla en la tabla es unica.
Cuando una nueva tupla es insertada a la
relacin, el sistema tiene que estar seguro
que la nueva tupla es diferente a todas las
tuplas existentes en la relacin

Reglas de Base Datos Relacional


Regla 3: Integridad de Entidad

No habr entradas nulas en la llave primaria


y todas las entradas sern nicas.

Con las reglas de integridad de entidad se


garantiza que cada entidad (tupla) tiene un
identificador nico

Reglas de Base Datos Relacional


Regla 4: Integridad Referencial

El valor de la clave fornea puede ser nulo o tiene


que parear (coincidir) con el valor de la clave
primaria de la tabla con la cual se establece la
interrelacin.

Se garantiza que no es posible establecer

relaciones que no pareen.

Con las reglas de integridad se minimizan los


errores de entrada de datos, esto es, que haya
consistencia.

Reglas de Base Datos Relacional


Observacin:

Cuando se borra una clave primaria


con referencias en una clave ajena
se debera:
Borrar informacin en cadena (borrar en
cascada) o
No permitir borrado o
Convertir los valores de clave ajena en
nulos.

Manipulacion de Datos
Operaciones en bases de datos

relacionales

Insertar (insert)- consiste en aadir una tupla


en la relacin.

Eliminar (delete)- consiste en quitar una tupla


de la relacin.

Modificar (update)- consiste en cambiar una


tupla en la relacin.

Consultar (select) -consiste en recuperar


datos.

Ejemplos
sexo

NSS
inic
f echa_nac
direccion

sexo

apellido
nombre

salario

(0,1)

Empleado

Supervisa
(0,n)

(0,n)

E
Tiene

(1,1)

(0,n)

Dependiente

(1,1) (0,n)
parentesco

f ecnac

nombre

pertence
horas

TrabajaEn

Es_Jefe
f ec_Ini
(1,1)
(0,1)

(0,n)
numerop

Proyecto

(0,n)

dirigida

(1,1)

numero

Departamento
Localizaciones
(1,n)

localizacionp
Nombrep

Modelo de datos Empresa


nombre

Ejemplos

Esquema de la B.D. Empresa

Ejemplos

Estado de la B.D.
Empresa (1)

Ejemplos

Estado de la B.D.
Empresa (2)

Ejemplos

Estado de la B.D. Empresa (3)

Ejemplos

Integridad Referencial (1)

Ejemplos

Integridad Referencial (2)

Ejemplos

Integridad Referencial (3)

S-ar putea să vă placă și