SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Parcial 2
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo Relacional
Modelo Relacional
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Antes
… ¿Qué es el Modelo Lógico
¿Qué es el Modelo Lógico
Establece la estructura de los elementos de datos y las relaciones entre ellos. El
modelo de datos lógico sirve como modelo para los datos utilizados. El modelo de
datos lógico lleva los elementos del modelado de datos conceptuales un paso más
allá al agregarles más información, introduciendo elementos asociados, definiciones
y un contexto más amplio para la estructura de los datos.
En esta etapa, se establece y define la naturaleza de las relaciones entre los datos,
y se normalizan los datos de diferentes sistemas.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
El objetivo primordial es encontrar un esquema que
sea una representación fidedigna del mundo real. La forma
de lograrlo es mediante el particionamiento
horizontal(divide una tabla en múltiples tablas que
contienen el mismo número de columnas, pero menos
filas), para evitar valores nulos(valor desconocido,
indefinido o no inicializado), y el proceso de normalización.
(reducir la redundancia de datos)
Modelo
Relacional
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Abstracción del
mundo real
Modelo
Entidad
Relación
1.- Modelo
Conceptual
Modelo
Relacional
2.- Modelo
Lógico
Nivel 2 • Modelo Lógico
Encontrar un esquema que sea
una representación fidedigna
del mundo real.
Muestra todas las estructuras
de tabla, incluidos el nombre de
columna, el tipo de datos de
columna, las restricciones de
columna, la clave principal, la
clave externa y las relaciones
entre las tablas.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Es parte del resultado del diseño
conceptual y da como resultado una
descripción de la estructura de la base
de datos en términos de las estructuras
de datos que puede procesar un tipo de
SGBD. El diseño lógico depende del tipo de
SGBD que se vaya a utilizar, se adapta a
la tecnología que se debe emplear, pero
no depende del producto concreto. En el
caso de bases de datos convencionales
relacionales (basadas en SQL para
entendernos), el diseño lógico consiste en
definir las tablas que existirán, las
relaciones entre ellas, normalizarlas, etc...
Modelo
Lógico
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
¿Qué es?
Es un Modelo de
organización y gestión
de bases de datos.
Consistente en el almacenamiento de datos en
tablas compuestas por filas o tuplas, y columnas o
campos.
Para realizar dicho
esquema usamos el
Modelo Relacional
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
¿Relación?
Es el término formal, tiene en la tabla su equivalente informal.
¿Tupla?
Elementos
Corresponde a una fila (Registro) de la tabla. Es una agrupación
horizontal de datos. (“por campos”)
¿Cardinalidad?
Se refiere al número de filas o registros y el grado es el número
de columnas o campos.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Elementos
Corresponde a una columna de la tabla. Es una unidad sencilla
de datos, es una pieza de información relacionada con una
persona o cosa (objeto), es un espacio de almacenamiento para
un dato en particular. En las bases de datos, un campo es la
mínima unidad de información a la que se puede acceder; un
campo o un conjunto de ellos forman un registro, donde pueden
existir campos en blanco, siendo este un error del sistema
operativo.
¿Campo o atributo?
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Representación del MR (Tabla = Tuplas y Campos)
Tupla es = a
una Fila, que es
= a un Registro.
Atributo o Campos o = Columna
Elementos
a a
a a
a
Relación
Pieza de
información
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Tipos de datos de los campos y/o atributos
Alfanuméricos: contiene cifras y letras.
Numéricos: existen de varios tipos principalmente como enteros y reales.
Booleanos: admite dos valores, «verdadero» y «falso».
Fechas: almacenan fechas facilitando posteriormente su explotación. Almacenar fechas de esta
forma posibilita ordenar los registros por fechas o calcular los días entre una fecha y otra.
Memos: son campos alfanuméricos de longitud ilimitada. Presentan el inconveniente de no poder
ser indexados.
Autoincrementables: son campos numéricos enteros que incrementan en una unidad su valor
para cada registro incorporado. Su utilidad resulta más que evidente: servir de identificador ya
que resultan exclusivos de un registro.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
¿Clave o Llave?
2 Tipos:
• Claves Primaria o Principal
• Clave Ajena o Foránea
Necesidad de identificación unívoca y no ambigua.
Es un dato que bien puede diferenciar una entidad de otra
(un registro de otro) o bien relacionar una entidad con otra.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
• Claves Primaria o Principal
Es un campo o grupo de campos (llave primaria compuesta) que identifica de manera
inequívoca un registro.
Ningún otro registro puede tener en el campo designado como clave o llave el mismo
valor.
Por ello decimos que es único e irrepetible y normalmente tiende a ser auto-
incrementable, por ejemplo al añadir dos registros a una base de datos, uno podría
tener como clave primaria el “id = 1” y el otro el “id = 2” si eliminamos el primero y
añadimos otro, automáticamente será asignado un “id = 3”, jamás volverá a ser
ingresado un registro con la clave primaria eliminada “1” ya que al haber existido
anteriormente el volver a crearla nos enfrenta a lo que llamamos inconsistencia de
datos. Y no solo podemos encontrar como clave primaria un id, a veces puede ser por
ejemplo un DNI, un CUIT, etc.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
• Clave Ajena o Foránea
Los valores corresponden a los valores de la clave primaria de otra tabla.
Para poder añadir una fila con un valor de clave foránea específico, debe existir una
fila en la tabla relacionada con el mismo valor de clave primaria.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Reglas de Integridad
Los conceptos básicos de integridad en el MR
son:
• valores nulos
• Integridad Referencial.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
• valores nulos
Las claves primarias de las relaciones base:
ninguno de los atributos que componen la clave
primaria puede ser nulo.
Cuando en una tupla un atributo es desconocido, se
dice que es nulo. El nulo implica ausencia de
información, significa que es un valor desconocido,
indefinido o no inicializado
Reglas
de
Integridad
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
• Integridad Referencial
Esta regla de integridad se aplica a las claves
ajenas: si en una relación hay alguna clave
ajena, sus valores deben coincidir con valores
de la clave primaria a la que hace referencia.
Para asegurarse que los registros de tablas
relacionadas son válidos y que no se borren
o cambien datos relacionados de forma
accidental produciendo errores de
integridad.
Reglas
de
Integridad
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Transformación de entidades.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
• Toda entidad se transforma en una tabla.
• Todo atributo se transforma en una
columna dentro de la tabla a la que
pertenece.
• El identificador de la entidad se convierte en
la clave primaria de la tabla.
Transformación
de
Entidades
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
• Toda relación N:M se convierte en una tabla
que tendrá como clave primaria las dos claves
primarias de las entidades que se asocian
• En las relaciones 1:N la clave primaria de la
entidad con cardinalidad 1 pasa a la tabla de
la entidad cuya cardinalidad es N.
Transformación
de
Entidades
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
• En las relaciones N:M existen tres posibilidades:
1. Si la cardinalidad es (0,1) en ambas
entidades, se crea tabla.
2. Mientras que si la cardinalidad de una es
(0,1) y de la otra es (1,1) se suele pasar la
clave primaria de (1,1) a la de (0,1).
3. Si la cardinalidad de ambas es (1,1) se pasa
la clave de cualquiera de ellas a la otra.
Transformación
de
Entidades
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Con esta Información
desarrollamos
el Modelo Lógico
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Herramienta SGBD
Una vez tenemos claro el modelo E-R debemos traducirlo a un modelo lógico directamente en el
propio Sistema Gestor de Bases de Datos)
WorkBench incluido en MySQL
Modelo
Relacional
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Normalización de
una base de datos
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Concepto: Normalización es el
proceso de simplificación de datos.
Si nosotros no normalizamos
nuestras bases de datos,
vamos a ocupar muchísimo
espacio.
Objetivos:
 Tener almacenado con el menor
espacio posible.
 Eliminar datos repetidos.
 eliminar errores lógicos.
 Tener nuestros datos ordenados.
 No perder información.
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
NIVELES PARA NORMALIZAR
BASE DE DATOS
• la primera forma normal
• la segunda forma normal
• la tercera forma normal
• la forma normal Boyce codd
• la cuarta normal
• y la quinta forma normal
En esta forma ya tenemos
una base de datos bien
estructurada sin datos
repetidos y estamos
optimizando el espacio
Nota importante:
Simplificación NO es igual
a pérdida de información
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
1FN
2FN
3FN
FN de Boyce-Codd
4FN
5FN
Niveles de normalización
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
1FN
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
La primera forma normal 1FN
Es la mas importante, ya que si no se cumple con esta regla, no se pueden cumplir
las demás.
Hay que seguir una serie de pasos para normalizar, en otras
palabras, para decir que nuestra tabla está en primera forma
normal. Estos son:
1. Eliminar los grupos repetitivos de la tablas individuales
2. Crear una tabla separada por cada grupo de datos
relacionados
3. Identificar cada grupo de datos relacionados con una clave
primaria.
Normalización
1ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Para identificar si lo hemos hecho de manera correcta debemos considerar
los siguientes aspectos, Una tabla está en Primera Forma Normal si:
1.- Todos los atributos son «atómicos».
Por ejemplo, en el campo teléfono no tenemos varios teléfonos.
2.- La tabla contiene una clave primaria única.
Por ejemplo el NI para personas, la matrícula para vehículos o un simple id
autoincremental. Si no tiene clave, no es 1FN.
3.- La clave primaria no contiene atributos nulos.
No podemos tener filas para las que no haya clave (por ejemplo, personas sin NI o
vehículos sin matrícula).
Los atributos compuestos se pueden dividir en sub-partes más pequeñas, que
representan atributos más básicos con significados propios. Por ejemplo, una
"dirección" puede sub-dividirse en: dir-calle, municipio, ciudad, estado etc.
Normalización
1ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
4.- No debe existir variación en el número de columnas.
En una tabla, si algunas filas tienen 8 columnas y otras 3, pues no estamos en
1FN.
5.- Los campos no clave deben identificarse por la clave.
Es decir, que los campos no clave dependen funcionalmente de la clave. Esto
es prácticamente lo mismo que decir que existe clave primaria.
6.- Debe Existir una independencia del orden tanto de las filas como de
las columnas.
Es decir, si los datos cambian de orden no deben cambiar sus significados.
Normalización
1ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Los atributos no sub-dividibles se llaman atómicos o simples. Si
no hay necesidad de referirse a los elementos individuales de una
dirección, entonces la dirección completa puede considerarse un
atributo simple.
Atributos de valor simple son los que tienen un sólo valor para
una entidad particular. Por ejemplo: edad.
Atributos multivalorados pueden tener un conjunto de valores
para una misma entidad. Por ejemplo: "títulos profesionales"
(una persona puede no tener ninguno, uno, dos o más).
Normalización
1ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
2FN
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
La segunda forma normal 2FN
Para que una tabla cumpla con la segunda forma normal debe cumplir necesariamente
con la primera forma normal y, además que:
1.- cualquier campo no-llave depende de todas las llaves primarias (y de las
candidatas)
en vez de solo de una parte de ellas.
En otras palabras: Una tabla está en 2FN si además de estar en 1FN cumple que
los atributos no clave depende de TODA la clave principal.
Normalización
2ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
1.- Crear tablas separadas para aquellos grupos de datos que se
aplican a varios registros.
2.- Relacionar estas tablas mediante una clave externa
Debemos seguir los siguientes pasos:
segunda forma normal está basada en el concepto de
dependencia completamente funcional.
Normalización
2ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Dependencia Funcional
A (PK)
B
C
Dependencia Transitiva
A (PK)
B
C
Los atributos “B” y “C” dependen
funcionalmente de “A”, es decir
para que exista “C” debe existir
“A” y para existir “B” necesita
existir “A”
El atributo “B” depende total y
funcionalmente de “A”, pero “C” depende
de “B”, pero “C” tiene una dependencia
transitiva con "A”
Normalización
1ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
3FN
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
La tercera forma normal 3FN
Para que una tabla pueda cumplir con la tercera forma normal es necesario que la
tabla
cumpla con la segunda forma normal y, además que:
1.- No exista ninguna dependencia funcional transitiva entre los atributos que no son
clave.
Esto, en términos simples significa que hagamos una
generalización de la segunda forma normal y nos aseguremos
que todo campo no-llave (cualquier campo que no forma parte
de las llaves candidatas) no dependa de otro campo que no sea
de las candidatas.
En la segunda forma normal se verifica todo campo no-llave
con las llaves candidatas, pero en la tercera forma normal se
verifica contra todos los demás campos (los que no forman
parte de las llaves candidatas) para verificar que todo campo
no-llave no esté fuera de lugar.
Normalización
3ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
Sólo se puede iniciar el proceso 3FN si es que la tabla se encuentra en 2FN. La
tercera forma normal resuelve los problemas causados por las dependencias
funcionales entre atributos no clave. Lo que busca es que todas las claves no
primarias de la relación no posean dependencias funcionales con otros atributos que
tampoco son claves primarias. De modo que si deseo transformar una relación que
no está en tercera forma normal, lo que deberá hacerse es remover los atributos no
clave que dependen de otros atributos no clave. Estos atributos removidos formarán
parte de una nueva relación la cual tendrá como clave primaria al atributo del cual
dependía el anterior en mención. De esta forma, cada atributo no clave de la relación
es independiente al resto de atributos.
Normalización
3ª.
Forma
normal
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Modelo
Relacional
MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON
ALMACENAMIENTO PERSISTENTE DE DATOS
SM1 - Construye bases de datos para aplicaciones Web
CBTis No. 134
Técnico en Programación
By Manzanarez
Abstracción del
mundo real
Modelo
Entidad
Relación
1.- Modelo
Conceptual
Modelo
Relacional
2.- Modelo
Lógico
Sistema
Manejador de
Base de Datos
3.- Modelo
Físico
Fin del Proceso.
Base de Datos Terminada

Más contenido relacionado

Similar a Modelo Relacional.pdf

Tecnologia Base Datos - Introduccion
Tecnologia Base Datos - IntroduccionTecnologia Base Datos - Introduccion
Tecnologia Base Datos - Introduccion
Guillermo Soler
 
Historia de la tecnologia de base de datos
Historia de la tecnologia de base de datosHistoria de la tecnologia de base de datos
Historia de la tecnologia de base de datos
ralbarracin
 
DiseñO De Base De Datos
DiseñO De Base De DatosDiseñO De Base De Datos
DiseñO De Base De Datos
Christian Rodas
 

Similar a Modelo Relacional.pdf (20)

Diseño y desarrollo del sistema
Diseño y desarrollo del sistemaDiseño y desarrollo del sistema
Diseño y desarrollo del sistema
 
DISEÑO Y DESARROLLO DE SISTEMA
DISEÑO Y DESARROLLO DE SISTEMADISEÑO Y DESARROLLO DE SISTEMA
DISEÑO Y DESARROLLO DE SISTEMA
 
Capitulo 1 David M. Kroenke
Capitulo 1 David M. KroenkeCapitulo 1 David M. Kroenke
Capitulo 1 David M. Kroenke
 
Diseño de una base de datos
Diseño de una base de datosDiseño de una base de datos
Diseño de una base de datos
 
GuíA Para La OptimizacióN De Consultas
GuíA Para La OptimizacióN De ConsultasGuíA Para La OptimizacióN De Consultas
GuíA Para La OptimizacióN De Consultas
 
Creación de una Base de datos
Creación de una Base de datos Creación de una Base de datos
Creación de una Base de datos
 
Funciones de un DBA y tipos de Base de Datos
Funciones de un DBA y tipos de Base de DatosFunciones de un DBA y tipos de Base de Datos
Funciones de un DBA y tipos de Base de Datos
 
Tecnologia Base Datos - Introduccion
Tecnologia Base Datos - IntroduccionTecnologia Base Datos - Introduccion
Tecnologia Base Datos - Introduccion
 
Bases de Datos: Conceptos y Generalidades
Bases de Datos: Conceptos y GeneralidadesBases de Datos: Conceptos y Generalidades
Bases de Datos: Conceptos y Generalidades
 
Entrenamiento Power BI [GerdauCorsa-Sep2019]
Entrenamiento Power BI [GerdauCorsa-Sep2019]Entrenamiento Power BI [GerdauCorsa-Sep2019]
Entrenamiento Power BI [GerdauCorsa-Sep2019]
 
Fundamentos de Base de Datos
Fundamentos de Base de DatosFundamentos de Base de Datos
Fundamentos de Base de Datos
 
SEMINARIOMODELAMIENTOBASEDEDATOS
SEMINARIOMODELAMIENTOBASEDEDATOSSEMINARIOMODELAMIENTOBASEDEDATOS
SEMINARIOMODELAMIENTOBASEDEDATOS
 
Fundamentos de BD - Unidad 2 Modelo Entidad Relacion
Fundamentos de BD - Unidad 2 Modelo Entidad RelacionFundamentos de BD - Unidad 2 Modelo Entidad Relacion
Fundamentos de BD - Unidad 2 Modelo Entidad Relacion
 
Historia de la tecnologia de base de datos
Historia de la tecnologia de base de datosHistoria de la tecnologia de base de datos
Historia de la tecnologia de base de datos
 
DiseñO De Base De Datos
DiseñO De Base De DatosDiseñO De Base De Datos
DiseñO De Base De Datos
 
Bases de datos
Bases de datos Bases de datos
Bases de datos
 
Bases de datos
Bases de datos Bases de datos
Bases de datos
 
Administracinyprogramacinensql server
Administracinyprogramacinensql serverAdministracinyprogramacinensql server
Administracinyprogramacinensql server
 
Base de datos
Base de datosBase de datos
Base de datos
 
Resumen de antologia sobre base de datos y macro
Resumen de antologia sobre base de datos y macroResumen de antologia sobre base de datos y macro
Resumen de antologia sobre base de datos y macro
 

Último

TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
UPSE
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
UPSE
 

Último (10)

Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocio
 
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocio
 
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)
 
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptxCIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
 
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxCiberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
 
Tipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfTipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdf
 
LA CALIDAD DE LA INFORMACION EN LA NUEVA ERA DEL INTERNET
LA CALIDAD DE LA INFORMACION  EN LA NUEVA ERA DEL INTERNETLA CALIDAD DE LA INFORMACION  EN LA NUEVA ERA DEL INTERNET
LA CALIDAD DE LA INFORMACION EN LA NUEVA ERA DEL INTERNET
 

Modelo Relacional.pdf

  • 1. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Parcial 2
  • 2. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Modelo Relacional
  • 3. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Antes … ¿Qué es el Modelo Lógico ¿Qué es el Modelo Lógico Establece la estructura de los elementos de datos y las relaciones entre ellos. El modelo de datos lógico sirve como modelo para los datos utilizados. El modelo de datos lógico lleva los elementos del modelado de datos conceptuales un paso más allá al agregarles más información, introduciendo elementos asociados, definiciones y un contexto más amplio para la estructura de los datos. En esta etapa, se establece y define la naturaleza de las relaciones entre los datos, y se normalizan los datos de diferentes sistemas.
  • 4. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez El objetivo primordial es encontrar un esquema que sea una representación fidedigna del mundo real. La forma de lograrlo es mediante el particionamiento horizontal(divide una tabla en múltiples tablas que contienen el mismo número de columnas, pero menos filas), para evitar valores nulos(valor desconocido, indefinido o no inicializado), y el proceso de normalización. (reducir la redundancia de datos) Modelo Relacional
  • 5. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Abstracción del mundo real Modelo Entidad Relación 1.- Modelo Conceptual Modelo Relacional 2.- Modelo Lógico Nivel 2 • Modelo Lógico Encontrar un esquema que sea una representación fidedigna del mundo real. Muestra todas las estructuras de tabla, incluidos el nombre de columna, el tipo de datos de columna, las restricciones de columna, la clave principal, la clave externa y las relaciones entre las tablas.
  • 6. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Es parte del resultado del diseño conceptual y da como resultado una descripción de la estructura de la base de datos en términos de las estructuras de datos que puede procesar un tipo de SGBD. El diseño lógico depende del tipo de SGBD que se vaya a utilizar, se adapta a la tecnología que se debe emplear, pero no depende del producto concreto. En el caso de bases de datos convencionales relacionales (basadas en SQL para entendernos), el diseño lógico consiste en definir las tablas que existirán, las relaciones entre ellas, normalizarlas, etc... Modelo Lógico
  • 7. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional ¿Qué es? Es un Modelo de organización y gestión de bases de datos. Consistente en el almacenamiento de datos en tablas compuestas por filas o tuplas, y columnas o campos. Para realizar dicho esquema usamos el Modelo Relacional
  • 8. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional ¿Relación? Es el término formal, tiene en la tabla su equivalente informal. ¿Tupla? Elementos Corresponde a una fila (Registro) de la tabla. Es una agrupación horizontal de datos. (“por campos”) ¿Cardinalidad? Se refiere al número de filas o registros y el grado es el número de columnas o campos.
  • 9. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Elementos Corresponde a una columna de la tabla. Es una unidad sencilla de datos, es una pieza de información relacionada con una persona o cosa (objeto), es un espacio de almacenamiento para un dato en particular. En las bases de datos, un campo es la mínima unidad de información a la que se puede acceder; un campo o un conjunto de ellos forman un registro, donde pueden existir campos en blanco, siendo este un error del sistema operativo. ¿Campo o atributo?
  • 10. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Representación del MR (Tabla = Tuplas y Campos) Tupla es = a una Fila, que es = a un Registro. Atributo o Campos o = Columna Elementos a a a a a Relación Pieza de información
  • 11. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Tipos de datos de los campos y/o atributos Alfanuméricos: contiene cifras y letras. Numéricos: existen de varios tipos principalmente como enteros y reales. Booleanos: admite dos valores, «verdadero» y «falso». Fechas: almacenan fechas facilitando posteriormente su explotación. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los días entre una fecha y otra. Memos: son campos alfanuméricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados. Autoincrementables: son campos numéricos enteros que incrementan en una unidad su valor para cada registro incorporado. Su utilidad resulta más que evidente: servir de identificador ya que resultan exclusivos de un registro.
  • 12. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional ¿Clave o Llave? 2 Tipos: • Claves Primaria o Principal • Clave Ajena o Foránea Necesidad de identificación unívoca y no ambigua. Es un dato que bien puede diferenciar una entidad de otra (un registro de otro) o bien relacionar una entidad con otra.
  • 13. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional • Claves Primaria o Principal Es un campo o grupo de campos (llave primaria compuesta) que identifica de manera inequívoca un registro. Ningún otro registro puede tener en el campo designado como clave o llave el mismo valor. Por ello decimos que es único e irrepetible y normalmente tiende a ser auto- incrementable, por ejemplo al añadir dos registros a una base de datos, uno podría tener como clave primaria el “id = 1” y el otro el “id = 2” si eliminamos el primero y añadimos otro, automáticamente será asignado un “id = 3”, jamás volverá a ser ingresado un registro con la clave primaria eliminada “1” ya que al haber existido anteriormente el volver a crearla nos enfrenta a lo que llamamos inconsistencia de datos. Y no solo podemos encontrar como clave primaria un id, a veces puede ser por ejemplo un DNI, un CUIT, etc.
  • 14. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional • Clave Ajena o Foránea Los valores corresponden a los valores de la clave primaria de otra tabla. Para poder añadir una fila con un valor de clave foránea específico, debe existir una fila en la tabla relacionada con el mismo valor de clave primaria.
  • 15. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Reglas de Integridad Los conceptos básicos de integridad en el MR son: • valores nulos • Integridad Referencial.
  • 16. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional • valores nulos Las claves primarias de las relaciones base: ninguno de los atributos que componen la clave primaria puede ser nulo. Cuando en una tupla un atributo es desconocido, se dice que es nulo. El nulo implica ausencia de información, significa que es un valor desconocido, indefinido o no inicializado Reglas de Integridad
  • 17. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional • Integridad Referencial Esta regla de integridad se aplica a las claves ajenas: si en una relación hay alguna clave ajena, sus valores deben coincidir con valores de la clave primaria a la que hace referencia. Para asegurarse que los registros de tablas relacionadas son válidos y que no se borren o cambien datos relacionados de forma accidental produciendo errores de integridad. Reglas de Integridad
  • 18. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Transformación de entidades.
  • 19. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional • Toda entidad se transforma en una tabla. • Todo atributo se transforma en una columna dentro de la tabla a la que pertenece. • El identificador de la entidad se convierte en la clave primaria de la tabla. Transformación de Entidades
  • 20. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional • Toda relación N:M se convierte en una tabla que tendrá como clave primaria las dos claves primarias de las entidades que se asocian • En las relaciones 1:N la clave primaria de la entidad con cardinalidad 1 pasa a la tabla de la entidad cuya cardinalidad es N. Transformación de Entidades
  • 21. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional • En las relaciones N:M existen tres posibilidades: 1. Si la cardinalidad es (0,1) en ambas entidades, se crea tabla. 2. Mientras que si la cardinalidad de una es (0,1) y de la otra es (1,1) se suele pasar la clave primaria de (1,1) a la de (0,1). 3. Si la cardinalidad de ambas es (1,1) se pasa la clave de cualquiera de ellas a la otra. Transformación de Entidades
  • 22. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Con esta Información desarrollamos el Modelo Lógico
  • 23. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Herramienta SGBD Una vez tenemos claro el modelo E-R debemos traducirlo a un modelo lógico directamente en el propio Sistema Gestor de Bases de Datos) WorkBench incluido en MySQL Modelo Relacional
  • 24. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Normalización de una base de datos
  • 25. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Concepto: Normalización es el proceso de simplificación de datos. Si nosotros no normalizamos nuestras bases de datos, vamos a ocupar muchísimo espacio. Objetivos:  Tener almacenado con el menor espacio posible.  Eliminar datos repetidos.  eliminar errores lógicos.  Tener nuestros datos ordenados.  No perder información.
  • 26. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional NIVELES PARA NORMALIZAR BASE DE DATOS • la primera forma normal • la segunda forma normal • la tercera forma normal • la forma normal Boyce codd • la cuarta normal • y la quinta forma normal En esta forma ya tenemos una base de datos bien estructurada sin datos repetidos y estamos optimizando el espacio Nota importante: Simplificación NO es igual a pérdida de información
  • 27. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional 1FN 2FN 3FN FN de Boyce-Codd 4FN 5FN Niveles de normalización
  • 28. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional 1FN
  • 29. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional La primera forma normal 1FN Es la mas importante, ya que si no se cumple con esta regla, no se pueden cumplir las demás. Hay que seguir una serie de pasos para normalizar, en otras palabras, para decir que nuestra tabla está en primera forma normal. Estos son: 1. Eliminar los grupos repetitivos de la tablas individuales 2. Crear una tabla separada por cada grupo de datos relacionados 3. Identificar cada grupo de datos relacionados con una clave primaria. Normalización 1ª. Forma normal
  • 30. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Para identificar si lo hemos hecho de manera correcta debemos considerar los siguientes aspectos, Una tabla está en Primera Forma Normal si: 1.- Todos los atributos son «atómicos». Por ejemplo, en el campo teléfono no tenemos varios teléfonos. 2.- La tabla contiene una clave primaria única. Por ejemplo el NI para personas, la matrícula para vehículos o un simple id autoincremental. Si no tiene clave, no es 1FN. 3.- La clave primaria no contiene atributos nulos. No podemos tener filas para las que no haya clave (por ejemplo, personas sin NI o vehículos sin matrícula). Los atributos compuestos se pueden dividir en sub-partes más pequeñas, que representan atributos más básicos con significados propios. Por ejemplo, una "dirección" puede sub-dividirse en: dir-calle, municipio, ciudad, estado etc. Normalización 1ª. Forma normal
  • 31. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional 4.- No debe existir variación en el número de columnas. En una tabla, si algunas filas tienen 8 columnas y otras 3, pues no estamos en 1FN. 5.- Los campos no clave deben identificarse por la clave. Es decir, que los campos no clave dependen funcionalmente de la clave. Esto es prácticamente lo mismo que decir que existe clave primaria. 6.- Debe Existir una independencia del orden tanto de las filas como de las columnas. Es decir, si los datos cambian de orden no deben cambiar sus significados. Normalización 1ª. Forma normal
  • 32. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Los atributos no sub-dividibles se llaman atómicos o simples. Si no hay necesidad de referirse a los elementos individuales de una dirección, entonces la dirección completa puede considerarse un atributo simple. Atributos de valor simple son los que tienen un sólo valor para una entidad particular. Por ejemplo: edad. Atributos multivalorados pueden tener un conjunto de valores para una misma entidad. Por ejemplo: "títulos profesionales" (una persona puede no tener ninguno, uno, dos o más). Normalización 1ª. Forma normal
  • 33. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional 2FN
  • 34. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional La segunda forma normal 2FN Para que una tabla cumpla con la segunda forma normal debe cumplir necesariamente con la primera forma normal y, además que: 1.- cualquier campo no-llave depende de todas las llaves primarias (y de las candidatas) en vez de solo de una parte de ellas. En otras palabras: Una tabla está en 2FN si además de estar en 1FN cumple que los atributos no clave depende de TODA la clave principal. Normalización 2ª. Forma normal
  • 35. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional 1.- Crear tablas separadas para aquellos grupos de datos que se aplican a varios registros. 2.- Relacionar estas tablas mediante una clave externa Debemos seguir los siguientes pasos: segunda forma normal está basada en el concepto de dependencia completamente funcional. Normalización 2ª. Forma normal
  • 36. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Dependencia Funcional A (PK) B C Dependencia Transitiva A (PK) B C Los atributos “B” y “C” dependen funcionalmente de “A”, es decir para que exista “C” debe existir “A” y para existir “B” necesita existir “A” El atributo “B” depende total y funcionalmente de “A”, pero “C” depende de “B”, pero “C” tiene una dependencia transitiva con "A” Normalización 1ª. Forma normal
  • 37. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional 3FN
  • 38. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional La tercera forma normal 3FN Para que una tabla pueda cumplir con la tercera forma normal es necesario que la tabla cumpla con la segunda forma normal y, además que: 1.- No exista ninguna dependencia funcional transitiva entre los atributos que no son clave. Esto, en términos simples significa que hagamos una generalización de la segunda forma normal y nos aseguremos que todo campo no-llave (cualquier campo que no forma parte de las llaves candidatas) no dependa de otro campo que no sea de las candidatas. En la segunda forma normal se verifica todo campo no-llave con las llaves candidatas, pero en la tercera forma normal se verifica contra todos los demás campos (los que no forman parte de las llaves candidatas) para verificar que todo campo no-llave no esté fuera de lugar. Normalización 3ª. Forma normal
  • 39. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional Sólo se puede iniciar el proceso 3FN si es que la tabla se encuentra en 2FN. La tercera forma normal resuelve los problemas causados por las dependencias funcionales entre atributos no clave. Lo que busca es que todas las claves no primarias de la relación no posean dependencias funcionales con otros atributos que tampoco son claves primarias. De modo que si deseo transformar una relación que no está en tercera forma normal, lo que deberá hacerse es remover los atributos no clave que dependen de otros atributos no clave. Estos atributos removidos formarán parte de una nueva relación la cual tendrá como clave primaria al atributo del cual dependía el anterior en mención. De esta forma, cada atributo no clave de la relación es independiente al resto de atributos. Normalización 3ª. Forma normal
  • 40. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Modelo Relacional
  • 41. MODULO IV - DESARROLLA SOFTWARE DE APLICACIÓN WEB CON ALMACENAMIENTO PERSISTENTE DE DATOS SM1 - Construye bases de datos para aplicaciones Web CBTis No. 134 Técnico en Programación By Manzanarez Abstracción del mundo real Modelo Entidad Relación 1.- Modelo Conceptual Modelo Relacional 2.- Modelo Lógico Sistema Manejador de Base de Datos 3.- Modelo Físico Fin del Proceso. Base de Datos Terminada