Está en la página 1de 103

Base de Datos I

Curso No. TWB22B

Copyright 2004

Introduccin
CY350 Conceptos RDBMS y SQL
Instructor
Por favor presntese usted:
- Nombre
- Experiencia en RDBMS
- Metas que espera lograr

Copyright 2004

Descripcin del Curso


Este curso est diseado para introducir a los
estudiantes a los conceptos de bases de datos
relacionales y SQL
El alcance del curso es proporcionar un
entendimiento bsico de los conceptos relacionados
a las bases de datos relacionales tales como la
normalizacin de bases de datos, SQL, diccionario
de datos, UDT, una introduccin al MySQL y
PostgreSQL.

Copyright 2004

Audiencia
Estudiantes, profesionales, y desarrolladores
quienes deseen conocer acerca de los conceptos
bsicos de las bases de datos relacionales y SQL

Copyright 2004

Objetivos del curso


Comprender los conceptos de RDBMS
Explicar el proceso de diseo de base de datos y el modelo

conceptual
Definir normalizacin y entender la necesidad de
normalizar
Entender SQL y tablas de datos
Trabajar con SQL avanzado y explicar sus conceptos tales
como claves primaria y fornea
Explicar cmo crear y administrar objetos de la base de
datos
Explicar los tipos de datos y definiciones de columnas
Explicar el acceso a base de datos y conceptos de seguridad

Copyright 2004

Objetivos del curso


Entender los fundamentos de MySQL y sus capacidades
Entender

los
capacidades

fundamentos

de

PostgreSQL

sus

Copyright 2004

Fundamentos de
RDBMS

Copyright 2004

Unidad 1:
Introduccin a RDBMS

Copyright 2004

Objetivos del Aprendizaje


-

Definir una base de datos


Describir el DBMS
Enumerar los diversos modelos de datos
Trabajar con RDBMS
Describir los fundamentos de la Administracin de
Transacciones
- Explicar la necesidad de las propiedades ACID de
una transaccin

Copyright 2004

Inicios del Manejo de Datos


- Gran cantidad de datos organizados en dispositivos
de almacenamiento secundarios (discos y cintas)
como archivos de datos
- Los archivos de datos llamados tambin archivos
planos, son una coleccin de registros, cada uno
teniendo un conjunto de campos
- Las relaciones en los archivos de datos deben ser
manejadas por los programadores.
- Dependiendo de la aplicacin, los archivos de datos
se pueden organizar como archivos secuenciales o
archivos de acceso aleatorio.
- Los archivos de datos son completamente
dependientes del dispositivo fsico que se utilice.
Copyright 2004

Desventajas de Archivos Planos


- No Concurrencia: Los datos no pueden ser
accedidos y modificados por ms de una persona a
la vez
- No Integridad: Si ms de una aplicacin utiliza la
misma informacin, los datos pueden ser
corrompidos
- No Relacin entre Datos: Es difcil establecer
relaciones entre los datos
- No Reutilizacin: Un archivo plano diseado para
un sistema no se puede reutilizar para otro sistema
- Baja Seguridad: Es difcil establecer niveles altos de
seguridad sobre los datos que se almacena en los
archivos planos
Copyright 2004

Qu es una Base de Datos?


Cmo puedo
almacenar juntos
diferentes tipos de
datos?

Copyright 2004

Qu es una Base de Datos? 2


Coleccin organizada de datos interrelacionados
Organizado
Manera que los datos necesitan ser almacenados

Coleccin
Grupo de datos
Colecciones de datos que pertenecen a diversos tipos de
datos

Inter-relacionado
Datos que proporcionan informacin razonable y coherente

Copyright 2004

Qu es una Base de Datos? 3


Ejemplo

ID de Estudiante

No. de Curso

Nombre de
Estudiante

Nombre de Curso

Edad
No. de Curso
ID de Estudiante
Foto de Estudiante

ID de Estudiante
Notas

Copyright 2004

Qu es una Base de Datos? 4


Una base de datos se usa para almacenar y recuperar
grandes cantidades de datos

8000 Estudiantes
32200 Notas
8000 Fotos de Estudiantes

- Fsicamente, los datos en una computadora se almacenan en forma de


archivos
- Es una coleccin computarizada de datos, almacenados como
archivos de datos
Copyright 2004

Sistema Administrador de Base de Datos


Se requiere un sistema apropiado para administrar una
base de datos
Las tareas incluyen:
-

Recuperar datos
Agregar datos
Modificar datos
Remover datos

Un DBMS se puede definir como un sistema que


trabaja sobre las bases de datos, y ayuda a los
usuarios a administrar la base de datos de acuerdo a
sus necesidades

Copyright 2004

Propiedades de un DBMS
Proporciona al programador funcionalidades:
Para crear bases de datos
Para

agregar, modificar y eliminar


hacia/desde una base de datos

elementos

Para ordenar registros en una base de datos

Proporciona comandos especiales para llevar a cabo


tareas sin programacin de bajo nivel
Proporciona independencia de datos

Copyright 2004

Independencia de Datos
Independencia de datos fsica
Los programas de aplicacin que usan la base de
datos no deben ser afectados por cambios en la
organizacin fsica subyacente de la base de datos

Independencia de datos lgica


Capacidad de cambiar el esquema lgico de la base
de datos sin causar que las aplicaciones se rescriban

Copyright 2004

Modelos de Datos
Un modelo de datos es la estructura subyacente de una
base de datos.
En esta unidad, se estudian los modelos lgicos basados
en registros.
Los modelos lgicos basados en
registros son llamados as porque la
base de datos es estructurada en
torno a registros.

Modelos
Lgicos
basados
en registros

Copyright 2004

El Modelo Relacional
Una o ms tablas representan datos y las relaciones
entre diversos datos
Una tabla es una coleccin de registros en una base
de datos
Una tabla tiene mltiples columnas
Cada columna tiene un nombre nico y contiene
conjuntos de datos
Cada conjunto se llama fila
El valor de los datos se obtiene por la interseccin de
una fila y una columna

Copyright 2004

El Modelo Relacional... 2
RegistrosdeEstudiante
IDEstudiante

NombreEstudiante

Hospedaje

CdigoDisciplina

93PS274

James

Ram Bhawan

A1

97PS087

Alice

Meera Bhawan

A2

CodigosdeDisciplina
CodigoDisciplina
A1

Disciplina
Ingeniera Qumica

A2

Ingeniera Civil

Copyright 2004

Caractersticas del Modelo Relacional


Coleccin de tablas que contienen los datos forman la base
de RDBMS
Es soportado por un modelo matemtico formal

Algebra Relacional
Clculo Relacional

Soporta
eficientes
maneras
administracin de datos
Operaciones relacionales:

de

recuperacin

Seleccionar (Select)
Proyectar (View)
Unir (join)

Operaciones de conjuntos:

Unin
Interseccin
Producto cartesiano

Capacidad de hacer cumplir las restricciones de integridad


de datos
Copyright 2004

El Modelo de Red
- Los datos se representan mediante una coleccin de
registros
- Las relaciones entre los datos se representan por
enlaces
- Los enlaces pueden ser vistos como punteros
- Los registros en la base de datos se organizan en
una coleccin de grafos arbitrarios

Copyright 2004

El Modelo de Red 2
93PS27 Jame
4
s

Ram
Bhawan

A1

97PS08 Alice
7

Meera
Bhawan

A2

97PS08 Anith
6
a

Meera
Bhawan

A1

97PS08 Jose
5

Meera
Bhawan

A2

A1 Ingeniera
Qumica

A2 Ingeniera Civil

Copyright 2004

El Modelo Jerrquico
- Similar al Modelo de Red
- Los datos se representan mediante una coleccin de
registros
- Las relaciones entre los datos se representan por
enlaces
- Los registros estn organizados como una coleccin
de rboles en vez de grafos arbitrarios

Copyright 2004

El Modelo Jerrquico 2

93PS274

James

Ram Bhawan

97PS087

Alice

A1

Meera Bhawan

97PS086

Anitha

Meera Bhawan

97PS085

A1 Ingeniera
Qumica

A2 Ingeniera
Civil

A2

Jose

A1 Ingeniera
Qumica

A1
A2

A2 Ingeniera
Civil

Copyright 2004

El Modelo Relacional vs Otros


- Los otros modelos estn estrechamente ligados con
la implantacin subyacente de la base de datos
- El Modelo Relacional es superior porque soporta la
independencia de datos
- El Modelo Relacional establece relaciones entre los
registros segn los valores que contienen
- Los otros usan punteros y enlaces complejos

Copyright 2004

Qu es un RDBMS?
- RDBMS es un DBMS basado en el modelo relacional
- Organiza los datos y las relaciones entre los datos en
tablas que se componen de columnas y filas
- Permite la definicin de las estructuras de datos, de las
operaciones de almacenamiento y recuperacin, y de
las restricciones de integridad
- Ciertos campos pueden ser designados
CLAVES para acelerar la bsqueda

como

Copyright 2004

Proveedores de RDBMS
Proveedor

Producto

ltima
Versin

IBM

DB2 UDB

8.x

Oracle
Corporation

Oracle

10

Microsoft

Microsoft
Server

MySQL

MySQL

5.x

PostgreSQL

PostgreSQL

8.x

SQL

2005

Copyright 2004

Administracin de Transacciones
- Una transaccin es una coleccin de operaciones que
realiza una nica unidad lgica de trabajo
- Una transaccin se considera incompleta si todas las
operaciones no ocurren
- La administracin de transacciones implica algunas
propiedades importantes llamadas propiedades ACID
(Atomicity, Consistency, Isolation, and Durability).
- Una serie de operaciones ocurre entre las sentencias
BEGIN TRANSACTION y END TRANSACTION
Copyright 2004

Atomicidad
- Una transaccin se ejecuta exactamente una vez
- Una transaccin es atmica
- Se hace todo el trabajo o no se hace nada

Copyright 2004

Consistencia
Una transaccin es una unidad de integridad porque:
Preserva la consistencia de datos
Transforma un estado consistente de datos en otro
estado consistente

La
consistencia
requiere
que
los
datos
comprometidos con una transaccin se preserven
semnticamente

Copyright 2004

Aislamiento
Una transaccin
aislamiento

es

tambin

una

unidad

de

La Administracin de Transacciones permite que las


transacciones concurrentes se comporten como si
cada una fuera la nica transaccin ejecutndose en
el sistema
El aislamiento requiere que parezca que slo una
transaccin est manipulando la base de datos
Una transaccin nunca debe poder ver las etapas
intermedias de otra transaccin

Copyright 2004

Durabilidad
- Una transaccin es tambin una unidad de
recuperacin
- Si una transaccin tiene xito, el sistema
garantiza que persistirn sus actualizaciones
- Este requisito de persistencia se llama durabilidad

Copyright 2004

Ventajas de DBMS
La redundancia de datos puede ser minimizada
La integridad, la seguridad y la consistencia de los
datos pueden ser aseguradas
Mejor rendimiento en
recuperacin de datos

el

almacenamiento

Se aseguran operaciones fciles de manipulacin de


datos
Los datos pueden ser distribuidos
Los datos pueden ser adaptados a los cambios del
modelo del negocio

Copyright 2004

Resumen
Se defini qu es una base de datos
Se describi qu es el DBMS
Se presentaron los diversos modelos de datos
Se explic que significa trabajar con un RDBMS
Se presentaron los fundamentos de la Administracin
de Transacciones
Se explic la necesidad de las propiedades ACID de
una transaccin

Copyright 2004

Unidad 2:
Diagrama Entidad Relacin

Copyright 2004

Objetivos del aprendizaje

Explicar los conceptos de diseo de base de datos


Enumerar los pasos para el diseo de base de datos
Discutir acerca de las entidades y sus relaciones
Describir los diagramas Entidad-Relacin (ER) y sus
notaciones
Indicar las pautas para construir un modelo ER
Transformar Diseo Conceptual a Diseo Lgico

Copyright 2004

Diseo de Base de Datos


Cmo se decide el nmero de tablas?
Qu datos se almacenan en una tabla particular?
Se debe formular el diseo del contenido de las
tablas que pueden almacenar los datos
El proceso de formulacin se denomina proceso de
diseo de base de datos

Copyright 2004

Pasos para el Diseo de una BD


Diseo Fsico
Diseo Lgico
Diseo Conceptual
Recoleccin y Anlisis
de Requerimientos
Copyright 2004

El Modelo Conceptual
Modelacin
de Datos

Diagramas
ER
Entidades
y
Relaciones
Copyright 2004

Modelacin de Datos
El propsito principal de la identificacin de entidades
es la produccin del diagrama Entidad-Relacin (ER)
que:

Muestra la naturaleza de las relaciones


significativas que existen entre los tipos de
entidades

Es una representacin en la aplicacin del mundo


real

Copyright 2004

Entidades y Relaciones
Las entidades son objetos del mundo real que son
relevantes al sistema de informacin
Las propiedades de una entidad son sus Atributos que
determinan los datos que deben ser almacenados
Considere como ejemplo un tipo de entidad carro con
los atributos:

Nro-Reg (nmero de registro del carro)

Modelo

Capacidad del motor

Color

Los datos reales se pueden describir como los valores


de los atributos de las entidades
Copyright 2004

Entidades y Relaciones...2
Un atributo nico de un tipo de entidad se llama
clave o el identificador de la entidad.
Dos o ms atributos juntos designados como la clave
forman una clave compuesta
El identificador o clave debe identificar unvocamente
un registro
Las entidades son asociadas por relaciones
En la sentencia, un cliente ha pedido ciertas
mercancas, ha pedido es la relacin

Copyright 2004

Por qu Diagramas ER?


La modelacin ER es una buena ayuda para disear
bases de datos
Un modelo ER es una representacin grfica del
sistema
Es un modelo de datos conceptual de alto nivel
Un modelo ER tambin soporta la percepcin de los
datos por un usuario
Es independiente de la plataforma particular del
DBMS y del hardware

Copyright 2004

Componentes del Diagrama ER

Entidad

Relacin

Copyright 2004

Entidades
Nombre
de
Entidad
Representa una coleccin de objetos
Los miembros (instancias) tienen ciertas
caractersticas como un objeto
Pueden ser fcilmente identificados
Juega un papel necesario

Copyright 2004

Entidades...2
Dos tipos de entidades:

Entidad
Fuerte

Entidad
Dbil

Copyright 2004

Relaciones
Las entidades estn conectadas unas a otras a
travs de relaciones
Las relaciones representan un conjunto de
conexiones entre objetos

Nombre de
Relacin

Copyright 2004

Relacin Entre Entidades

Estudiante

Escribe

Examen

Copyright 2004

Cardinalidad
Especifica si una entidad est relacionada con una o
ms instancias de otra entidad en una misma
relacin

Copyright 2004

Relacin Uno-a-Uno
Tambin se denota por 1:1
Un hombre se puede casar slo con una mujer y una
mujer se puede casar slo con un hombre

Hombre

Se casa
con

Mujer

Copyright 2004

Relacin Uno-a-Muchos
- Tambin se denota por 1:M o M:1
- Una madre puede dar a luz a muchos nios
- Un nio puede tener solamente una madre biolgica

Madre

Tiene

Nio

Copyright 2004

Relacin Muchos-a-Muchos
- Tambin se denota por M:N
- Ms de una persona puede ser autor de un libro
- Un autor puede escribir muchos libros

Libro

Tiene

Autor

Copyright 2004

Opcionalidad
Una relacin puede ser opcional o mandatoria
La opcionalidad puede ser diferente a cada lado de la
relacin
Un estudiante no puede existir sin un curso
Un curso puede existir antes de que los estudiantes
se hayan matriculado

Estudiante

Estudia

Curso

Copyright 2004

Desarrollar Diagramas ER
Considere un Sistema de Orden De Compra
Identifique las entidades del sistema
Estas son:
- Proveedor
- Orden de Compra
- Artculo

Copyright 2004

Desarrollar Diagramas ER...2


Proveedor

Obtiene

Orden
de
Compra

Relacin (1:M) Proveedor:Orden de Compra

Proveedor

Suministra

Artculo

Relacin (M:N) Proveedor:Artculo


Orden
de
Compra

Contiene

Artculo

Relacin (M:N) Orden de Compra: Artculo


Copyright 2004

Desarrollar Diagramas ER...3


Proveedor

Obtiene

Orden
de
Compra

Contiene

Suministra

Artculo

Diagrama ER de un Sistema de Orden de Compra

Copyright 2004

Atributos
Nombre del
Atributo

Todos los datos referentes a una entidad estn


contenidos en sus atributos
Un atributo es alguna propiedad de la entidad que es
interesante en un contexto especfico
El valor del atributo se almacena en la base de datos
Cada instancia del conjunto de entidades tendr el
mismo conjunto de atributos, pero puede contener
valores diferentes

Copyright 2004

Mostrar los Atributos en los Diagramas ER

Id del
Estudiante

Nombre del
Estudiante

Estudiante

Copyright 2004

Mostrar las Claves en el Diagrama ER


Id del Estudiante

Nombre del
Estudiante
Estudiante

Una clave identifica de manera nica las ocurrencias


de un tipo de entidad
Una clave candidata es un candidato potencial a
convertirse en una clave primaria.
La clave candidata seleccionada como
identificador se conoce como clave primaria

el

Copyright 2004

Diagrama E/R de HLX Products Ltd


Nombre
Empleado

Id Empleado

Empleado

tien
e

Trabaja
en

trabaja
en

Dependiente

Proyecto
Nombre

Sexo

Relacin
Nombre
Proyecto

Pertenece
a

Id
Proyecto

Nombre
Dep

Departamento

Id Dep

Copyright 2004

Grados de una Relacin


Relacin Unaria

Empleado

Supervisa

El nmero de entidades que participan en la relacin es uno

Copyright 2004

Relacin Binaria

Factura

Contiene

Artculo

El nmero de entidades que participan en la relacin es dos

Copyright 2004

Relacin Ternaria
Computadora

Empleado

Relacin
Empleado
Computadora
Proyecto

Proyecto

Copyright 2004

Pasos para Construir un Modelo ER


Identifique las entidades
Elimine las entidades duplicadas
Enumere los atributos de cada entidad
Marque las claves primarias
Defina las relaciones
Examine cada tipo de entidad para determinar
cmo se relaciona con otras entidades
Describa la cardinalidad de las relaciones
Elimine las relaciones redundantes

Copyright 2004

Transformacin Diseo Conceptual a Diseo Lgico


Relacin 1:1

Serial

FechaEmision

IdCertificado

Modelo
Color

Carro

Placa

CertificadodeC
irculacion

tiene

Marca

Tipo

Idpropietario

Ao
Clave
fornea

Serial

Modelo

Color

Tabla Carro
A
Placa
o

Clave
Primaria

Marca

IdCertificado

Tabla CertificadodeCirculacion
IdCertificado

Clave
Primaria

IdPropietario

Tipo

FechaEmisin

Copyright 2004

Transformacin Diseo Conceptual a Diseo Lgico


Relacin 1:M o M:1
Serial
IdPuerta

Modelo
Color

Carro

Placa

Puerta

tiene

Marca

Color

Tipo

Ao

Tabla Carro
Serial

Modelo

Color

Placa

Ao

Marca

Clave
fornea
Clave
Primaria

Tabla Puerta
IdPuerta

Clave
Primaria

Tipo

Color

Serial

Copyright 2004

Transformacin Diseo Conceptual a Diseo Lgico


Relacin M:N

FechaNac

Idlibro

Idautor

Titulo
Cant_paginas

Libro

Autor

tiene

Genero

editorial

Nombre

Ao

Direccion

Apellido

Tabla Cliente

Idautor

Clave
Primaria

Nombre

Apellido

Clave
Primaria

FechaNa
c

Direccion

Tabla Libro
Idlibro

Titulo

cant_paginas

Genero

A
o

Editorial

Tabla
Relacin
Clave Primaria
Compuesta

Tabla Autor-Libro
Idautor

Idlibro

Copyright 2004

Resumen
Se explicaron los conceptos necesarios para realizar
el diseo de base de datos
Se describieron los pasos para el diseo de base de
datos
Se estudiaron los conceptos de entidades y sus
relaciones
Se describieron los diagramas ER y sus notaciones
Se presentaron las pautas para construir un modelo
ER
Se mostraron las manera de como transformar
Diseo Conceptual en Diseo Lgico
Copyright 2004

Unidad 3:
Normalizacin de la Base de
Datos

Copyright 2004

Objetivos del Aprendizaje


- Explicar la normalizacin
- Describir la importancia de la normalizacin en
las bases de datos
- Apreciar la necesidad de la normalizacin en las
bases de datos
- Discutir diversas clases de formas normales

Copyright 2004

Normalizacin
Normalizacin es el proceso de organizar los datos
para minimizar la duplicacin
Generalmente implica dividir una base de datos en
dos o ms tablas y definir las relaciones entre ellas
El objetivo es aislar los datos en una tabla

Copyright 2004

Proceso de Normalizacin
Tabla Estudiante
ID
Estudi
ante

Nombre
Estudiante

Ubicaci
nDomicili
o

ID
Curso

Curso

S101

Joseph
Daniel

New York

CS201

Sistema de Administracin de Base


de Datos

S102

Jerry Jones

San Jose

CS202

Anlisis y Diseo Orientado a


Objetos

S101

Joseph
Daniel

New York

CS202

Anlisis y Diseo Orientado a


Objetos

S103

Carl Baker

Washingt
on

CS203

Ingeniera de Software

Copyright 2004

Proceso de Normalizacin
Hay un requerimiento del negocio que solicita
cambiar el nombre del curso Anlisis y Diseo
Orientado a Objetos a Anlisis Orientado a Objetos
Cmo puede ser incorporado este cambio?
Se puede evitar la duplicacin si se divide la tabla
Estudiante en dos tablas diferentes y despus se
enlazan con una relacin de tabla

Copyright 2004

Proceso de Normalizacin 2
Tabla Estudiante
ID
Estudiante
S101

Nombre
Estudiante
Joseph Daniel

Ubicacin
Casa
New York

S102

Jerry Jones

San Jose

S103

Carl Baker

Washington

Copyright 2004

Proceso de Normalizacin 3
Tabla Curso
ID Curso
CS201
CS202
CS203

Curso
Sistema de Administracin de Base
de Datos Relacional
Anlisis y Diseo Orientado a
Objetos
Ingeniera de Software

Copyright 2004

Proceso de Normalizacin 4
Tabla Estudiante-Curso
ID
Estudiante

ID Curso

S101

CS201

S101

CS202

S102

CS202

S103

CS203

Copyright 2004

Descomposicin sin Prdida (Loss-less Join)


Los datos deben ser analizados cuidadosamente
antes de que se puedan dividir las tablas
Cuando se hace una unin (join) de las tablas
divididas, se debe obtener la tabla original sin
normalizar
Esta unin se llama Descomposicin sin Prdida
Loss-Less Join
No debe haber prdida de datos despus de la
normalizacin

Copyright 2004

Necesidad de Normalizar

Integridad
de Datos

Flexibilidad

Eficiencia

Copyright 2004

Primera Forma Normal (1NF)


Debe satisfacer las siguientes condiciones:
- Los campos de variables repetidos o grupos
variables repetidos deben ser eliminados
- Todas las filas deben contener el mismo nmero
Relaciones
de campos

Copyright 2004

Primera Forma Normal...2


Nombre
Informacin de la Orden de Compra
Email
Cliente

Grado Puntos

de
Nombre entidad
Cant Precio
Reque Unitario

Id
Orden

Fecha
Orden

Cliente

11/30/1998

Joe
Smith

Joe@ewr.com

Martillo

$25

11/30/1998

Joe
Smith

Joe@ewr.com

Sierra

10

$30

11/30/1998

Joe
Smith

Joe@ewr.com

Clavos

15

$40

12/3/1998

Sam

Sam@ter.com

Sierra

20

$30

12/3/1998

Sam

Sam@ter.com

Clavos

25

$40

Credito

Item

Copyright 2004

Problemas por no Estar en 1NF


Suponga que se necesita cambiar la direccin Email
del Cliente Joe Smith
Nombre de
Se debe cambiar en 3 Relacin
lugares
Esto sera bastante extenso cuando el cliente coloca
x rdenes con y items cada uno
Se tendra que cambiar en x*y lugares

Copyright 2004

Aplicar 1NF
Tabla Orden en 1NF
IdOrden

Fecha orden

Cliente

EmailCliente

Grado

Puntos Credito

11/30/1998

Joe Smith

joe@iewr.com

Estudiante
2

12/3/1998

Escribe
Sam

sam@ter.com

Examen
4

Copyright 2004

Aplicar 1NF 2
Tabla ArtculoOrden
IdOrden

NombreItem

Cant Reque

Precio Unitario

Martillo

$25

Sierra

10

$30

Clavos

15

$40

Sierra

20

$30

Clavos

25

$40

Copyright 2004

Segunda Forma Normal (2NF)


- Un diseo relacional se dice que est en segunda
forma normal (2NF) si, y slo si, est en 1NF y,
adems, cada columna que no est en la clave
primaria es dependiente totalmente la clave primaria
- La Hombre
2NF se aplica a las Se
tablas
casaque tienen claves
primarias compuestas por dos
con o ms columnas.Mujer
-

Si una Tabla est en 1NF y su clave primaria es


simple (tiene un sola columna), entonces tambin
est en 2NF.

Copyright 2004

Segunda Forma Normal (2NF)...2


La Tabla Orden est en 2FN ya que su clave primaria
es simple
La Tabla ArticuloOrden tiene como clave primaria a
las columnas IdOrden y NombreItem, en este caso se
aplica la 2NF

Copyright 2004

Segunda Forma Normal (2NF)...2


La tabla ArticuloOrden se divide en 2 Tablas:
DetalleOrden
Item
Tabla DetalleOrden
IdOrden

IdItem

Cant Reque

Precio UnitarioVenta

$25

10

$30

15

$40

20

$30

25

$40

Copyright 2004

Segunda Forma Normal (2NF)...3


En la tabla Item se crea el campo IdItem para identificar
univocamente los registros
Tabla Item
IdItem

Nombre Item

Precio Unitario

Martillo

Sierra

$30

Clavos

$40

$25
Tiene

Autor

Copyright 2004

Tercera Forma Normal (3NF)


Para que un diseo relacional est en 3NF, tiene que
estar en 2NF
Cada columna no-clave tiene que ser mutuamente
independiente
No debe tener ninguna dependencia transitiva

Copyright 2004

Dependencia Transitiva
Si se tiene tres columnas A, B y C en una tabla,
donde A es la columna clave
La dependencia puede ser especificada como:
A->B, C
Si B depende de A, y C depende de B, entonces C
tambin depende de A
Esta clase de dependencia se llama Dependencia
Transitiva

Copyright 2004

Por qu no es 3NF?
Las columnas no-clave PuntosCredito y Grado no son
Nombre del
mutuamente independiente
Atributo

Las columnas no-clave cliente y emailCliente no son


mutuamente independiente
Tabla Orden
IdOrden

Fecha orden

Cliente

EmailCliente

Grado

Puntos Credito

11/30/1998

Joe Smith

joe@iewr.com

12/3/1998

Sam

sam@ter.com

Copyright 2004

Tabla Cliente en 3NF


IdCliente

Cliente

EmailCliente

Puntos Credito

Joe Smith

joe@iewr.com

Sam

sam@ter.com

Nombre del
Estudiante

Estudiante

Copyright 2004

Tabla PuntosCredito en 3NF


Puntos Credito

Grado

Nombre del A
Estudiante

Id del Estudiante

Nombre del
Estudiante

Copyright 2004

Tabla Orden en 3NF


Nombre del
Estudiante
IdCliente

IdOrden

FechaOrden

11/30/1998

12/3/1998

Madre

Tiene

Nio

Copyright 2004

Cuarta Forma Normal (4NF)


- Tiene que estar en 3NF
- La tabla no debe contener dos o ms columnas
independientes de mltiples valores

Persona

PaisesVisitados

PremiosRecibidos

Copyright 2004

Una Tabla Ambigua


Persona

PaisesVisitados

Scott

Germany

Scott

France

PremiosRecibidos

Scott

Grammy

Scott

Oscar

Scott

Premio Noble

Copyright 2004

4NF Datos de la Tabla PaisesVisitados


Persona

PaisesVisitados

Scott

Germany

Scott

France

Copyright 2004

4NF Datos de la Tabla PremiosRecibidos


Persona

PremiosRecibidos

Scott

Grammy

Scott

Oscar

Scott

Premio Noble

Copyright 2004

Factores que Afectan la Normalizacin


Datos univaluados versus multievaluados
Dependencia completa de la clave
Hechos independientes contra hechos dependientes
La presencia de restricciones mutuas
La presencia de representaciones no nicas o no
singulares

Copyright 2004

Resumen
Se explic qu es la normalizacin
Se present la importancia de la normalizacin en las
bases de datos
Se present la necesidad de la normalizacin en las
bases de datos
Se explicaron las diferentes clases de formas
normales

Copyright 2004

Unidad 4:
Laboratorio de Diseo de Base
de Datos

Copyright 2004

Unidad 5:
Laboratorio de Modelado de
Base de Datos

Copyright 2004

También podría gustarte