SlideShare uma empresa Scribd logo
1 de 47
Baixar para ler offline
Diseño de Base de
     Datos Relacionales

Se utilizará la herramienta CASE Data
Architect para realizar el modelo conceptual
de la base de datos, posteriormente se
migrará el modelo conceptual al modelo físico
para implementarlo en el administrador de
base de datos robusto SQL Server.               1
Diseño de una Base de Datos

                            Espacio del problema


                           Modelo de Datos: Modelo
                                   Lógico


                              Esquema de BD:
                                Modelo Físico



                           Implementación en la BD
M.C. Daniel Esparza Soto                             2
Espacio del problema

El espacio del problema define características
con que contará la BD que se desea desarrollar.
Generalmente la definición del espacio del
problema se ha realizado de manera textual y en
ella se define las necesidades requeridas por la
BD.

Una buena definición del espacio del problema
se lleva a cabo analizando todos los procesos en
donde se desarrollará la BD.

M.C. Daniel Esparza Soto                           3
Análisis del espacio de problema

1.- Todos los documentos que presenten información
capturada por los usuarios.
2.- Revisar cualquier tipo de reportes que se utilizan
dentro de la empresa, esto es para obtener información
relativa a los periodos de captura.
3.- Analizar los procesos internos de manejo de
materiales, entradas de almacén, etc., todo esto para
encontrar información no contemplada en los puntos
anteriores.
4.- Si se trata de remplazar un sistema ya existente, es
necesario revisar las especificaciones de dicho sistema y
aportar las mejoras necesarias.

M.C. Daniel Esparza Soto                                    4
Espacio del problema:
Ferreteria
Administrar las ventas de una ferreteria
llevando el control de articulos agrupados por
familias. Las ventas deben llevar el registro
del cliente y el empleado que realiza la venta.
Es necesario reportes:
De Ventas Por municipio y colonia.
De ventas por zonas de empleado.




M.C. Daniel Esparza Soto                      5
Espacio del problema: Lavado de
automoviles
Administrar una cadena de lavado de carros,
donde se debe registrar el servicio proporcionado
a cada vehiculo, señalando :
El nombre del cliente.
Marca y modelo del vehiculo,
Numero de unidad de lavado,
Empleado que lavó el carro y
Servicios proporcionados: lavado int. , ext. , de
motor, shampoo,etc.


M.C. Daniel Esparza Soto                         6
Analisis del problema:
Liga de futbol
Realizar el control de equipos de futbol en una
liga o torneo, en la liga de futbol habrá
entrenadores y cada jugador solamente puede
pertenecer a un equipo.
La liga contará con 5 categorias:
8-10,11-12,13-14,15-16.
Se contará con 2 ramas: femenil y varonil.
Realizar el calendario regular y resultados de los
partidos.


M.C. Daniel Esparza Soto                             7
Modelo de datos

Es una descripción conceptual del espacio del
problema, esto incluye la definición de entidades,
sus atributos y sus restricciones. También incluye
una descripción de las relaciones establecidas
entre las entidades y cualquier restricción que se
aplique a sus relaciones. El modelo de datos se
expesará entonces en función de:
1.- Entidades.
2.- Atributos.
3.- Dominios
4.- Asociaciones.
M.C. Daniel Esparza Soto                         8
Entidades

Una entidad es cualquier cosa que resulte
necesaria en el sistema para mantener
información. Cuando se empieza a diseñar el
modelo de datos la recopilación de entidades es
el inicio del proceso. Cuando se habla del
espacio del problema, la mayoría de los
nombres y verbos que se utilizan estarán
sujetos a convertirse en entidades.




M.C. Daniel Esparza Soto                          9
Entidades

Liga de Futbol:            Ferreteria: Lavado:
Liga.                     Articulos   Lavado

Equipos.                  Familias    Vehiculos

Jugadores.                Ventas      Empleados

Entrenadores.             Ferreterias Clientes

Categorias.               Empleados Unidades

Ramas.                    Clientes    Servicios

Calendario.               Zonas       Marcas

Resultados.               Colonias    Modelos
                           Municipios
M.C. Daniel Esparza Soto                             10
Atributos

El sistema tendrá que plasmar ciertos hechos de
cada entidad. Esos hechos se refieren como los
atributos de la entidad.
La determinación de los atributos que hay que
incluir en cada entidad es un proceso semántico,
se deben tomar descisiones basadas en el
significado de los datos y en cómo se utilizarán.
Con el estado actual de la tecnología no hay
forma de desarrollar un diseño de BD que se
pueda demostrar que es correcto. Se puede
probar que algunos diseños tienen fallas, pero no
se puede probar que uno concreto no las tenga.
M.C. Daniel Esparza Soto                        11
Atributo identificador o clave principal

Una vez definidas las entidades y sus
respectivos atributos debemos considerar dentro
de cada entidad, un atributo principal que
identifique cada elemento de la entidad, a este
atributo se le conocera como identificador,
clave candidata o clave principal de la entidad.

Esta clave principal posteriormente se
convertirá en la llave primaria de la tabla.


M.C. Daniel Esparza Soto                       12
Dominios

El dominio establece el conjunto de valores
posibles que el atributo puede contener para
hacer considerado como válido. A menudo se
confunden los dominios con los tipos de datos,
aunque no son exactamente lo mismo. Tipo de
dato es el concepto físico, mientras que dominio
es un concepto lógico. El concepto de dominio es
más amplio que el tipo de datos, un dominio
establece una descripción más especifica de
datos que son válidos.


M.C. Daniel Esparza Soto                       13
Ejemplo 1: espacio del problema,
entidades y atributos.
Espacio del problema:
Se desea llevar el registro de unas elecciones en
el estado donde se eligirá gobernador. Habrá
casillas por municipios y se tendrán candidatos
por partidos políticos.

Es necesario un reporte de los ciudadanos que
esten dados de alta en las casillas. Un reporte
final de votaciones por candidatos en cada
municipio y en cada casilla.

M.C. Daniel Esparza Soto                          14
Asociaciones

Además de los atributos de cada entidad, un
modelo de datos debe especificar las
asociaciones existentes entre las entidades. En
el nivel conceptual, las asociaciones son
simplemente relaciones existentes entre
entidades. Las entidades se clasifican en :

- Entidades participantes.
- Grado de una asociación.


M.C. Daniel Esparza Soto                          15
Entidades participantes

Son las entidades que participan en una
asociación. Se clasificán en :
1.- Entidades débil: Es la entidad que sólo
puede existir en relación a otra entidad. También
se le conoce como entidad con participación
total en la asiciación debido a que sólo existe si
existe la asociación.

2.- Entidad normal: Es la entidad que puede
existir por si misma en la asociación. También se
le conoce como entidad con participación
parcial.
M.C. Daniel Esparza Soto                         16
Entidades participantes

                       Clientes        Pedidos
                           E. Normal   E. débil



                       Familias        Productos
                           E. Normal   E. débil




M.C. Daniel Esparza Soto                           17
Clasificación de entidades

1.- Entidad Principal: Es la entidad que
compartirá su clave principal con la otra entidad
la cual se le conocerá como entidad externa. La
entidad principal siempre es la entidad normal.

2.- Entidad Externa: Es la entidad que
contendrá la clave principal de la entidad
principal. Generalmente es la entidad débil.




M.C. Daniel Esparza Soto                            18
Entidades participantes

                       Clientes    Pedidos
                      E. Normal    E. débil
                    E. Principal   E. Externa


                       Familias    Productos
                      E. Normal    E. débil
                    E. Principal   E. Externa




M.C. Daniel Esparza Soto                        19
Grado de una asociación

Es el numero de entidades participantes en una
asociación, se clasifican en :

1.- Asociación unaria: Es una asociación de
una entidad consigo misma.
2.- Asociación binaria: Es una asociación entre
2 entidades, este es el tipo de asociación más
común.
3.- Asociaciones ternarias: Es una asociación
donde intervienen 3 entidades, este tipo de
asociación es el menos conocido.
M.C. Daniel Esparza Soto                          20
Cardinalidad de la asociación

Es el número máximo de ejemplares de una
entidad que se pueden asociar con un ejemplar
de otra entidad. Hay 3 variaciones:

1.- Asociación uno-a-uno.
2.- Asociación uno-a-muchos.
3.- Asociación muchos-a-muchos.




M.C. Daniel Esparza Soto                        21
Asociación uno-a-uno

Este tipo de asociaciones ocurre cuando un
ejemplar de la entidad X se puede asociar tan
solo con un ejemplar de la entidad Y. Cuando se
eligen las asociaciones uno-a-uno entre
entidades hay que asegurarse de que la
asociación se mantiene en todo momento y en
caso de que cambie no nos interesan los valores
pasados.
Estas asociaciones son raras en el mundo real,
pero son muy comunes y útiles como concepto
abstracto. Se utilizan principalmente para reducir
el numero de atributos de una relación o para
modelar las subclases de las entidades.
M.C. Daniel Esparza Soto                         22
Asociaciones uno-a-uno

En estas asociación cualquiera de las 2
entidades puede ser la entidad principal o la
entidad externa. La elección depende de las
especificaciones del espacio del problema.

Una vez elegida cada una de ellas, se procede a
copiar la clave principal que pertenece a la
entidad principal a los atributos de la entidad
externa. Este nuevo atributo dentro de la entidad
externa se deberá marcar como entidad única o
campo único.
M.C. Daniel Esparza Soto                        23
Ejemplo: asociaciones uno-a-uno

Modelar la asociación que existe entre
empleados y despachos en un edificio en donde
en cada despacho solamente puede trabajar un
empleado. E. principal   E. Externa
                  despachos   Empleados
          Atributos:
             Numero           Clave
             Dimensiones      Nombre
             Baños            Domicilio
             Ventanas         Fecha Nac.
M.C. Daniel Esparza Soto      NumeroDesp (unico)   24
Solución II:
                  despachos       Empleados
                     E. Externa   E. principal
          Atributos:
             Numero               Clave
             Dimensiones          Nombre
             Baños                Domicilio
             Ventanas             Fecha Nac.
             Clave(unico)

M.C. Daniel Esparza Soto                         25
Asociación uno-a-muchos

Es el más común entre las entidades y es donde
un ejemplar de una entidad se puede asociar con
uno o muchos ejemplares de otra entidad.
La entidad del lado de uno de la asociación
siempre es la relación principal, su clave
principal se copia en la relación del lado muchos
que se convierte en la relación externa, por lo
tanto, la entidad del lado de muchos siempre es
la relación externa.



M.C. Daniel Esparza Soto                        26
Ejemplo: asociaciones uno-a-muchos

Modelar la asociación que existe entre estados y
municipios donde cada estado tiene muhcos
municipios.
                           Estados    Municipios


             Atributos:
             ClaveEdo                ClaveMpio
             Nombre                  Nombre
             Tamaño                  Tamaño
                                     ClaveEdo
M.C. Daniel Esparza Soto                           27
Ejemplos:
1.- Realizar el modelo lógico de paises, estados,
municipios y colonias.

2.- Modelar una empresa donde cada empleado
tiene derecho a un cajon de estacionamiento.
Además llevar el registro de los cajones
existentes por piso. Los empleados estan
asignados a un departamento en la empresa.


M.C. Daniel Esparza Soto                            28
Asociación muchos-a-muchos

Este tipo de asociaciones relaciona los elementos de una
entidad contra todos los elementos de la otra entidad. Se
puede considerar una relación doble uno-a-muchos en
ambos sentidos. Este tipo de asociaciones genera una
tercera entidad abstracta llamada tabla unión la cual
tendrá asociaciones uno-a-muchos dirigida a ella por el
lado de muchos. Por lo tanto tendremos 2 entidades
principales las cuales heredarán sus claves principales a
la tabla unión que será la relación externa.
Esta tabla unión, por lo tanto tendrá las claves principales
de las entidades principales como su propia clave
principal.

M.C. Daniel Esparza Soto                                   29
Ejemplo: asociaciones muchos-a-muchos

Modelar la asociación entre alumnos y materias
donde un alumnos puede tomar clases en
muchas materias y una materia puede tener
muchos alumnos.
                           Materias              Alumnos
Se convierte en :
     Materias                         T. unión             Alumnos
Atributos:
 ClaveMateria                     Matricula            Matricula
 Nombre                           ClaveMateria         Nombre
 Créditos
M.C. Daniel Esparza Soto                               Dirección     30
1.- Realizar el modelo lógico de la relación que
existe entre almacenes y materiales, donde cada
material puede estar guardado en varios
almacenes.

2.- Realizar el modelo lógico para el prestamo de
libros en una biblioteca, llevando el control de
prestamos de cada alumno.




M.C. Daniel Esparza Soto                        31
Asociaciones binaria

Modelar la asociación entre Despachos y
Empleados en cada uno de estos casos:

1.- Asociación binaria uno-a-uno.



2.- Asociación binaria uno-a-muchos.



3.- Asociación binaria muchos-a-muchos.
M.C. Daniel Esparza Soto                  32
Asociaciones unarias

Modelar la asociación entre Empleados y Jefes
( que también son empleados) para cada uno de
estos casos:

1.- Asociación unaria uno-a-uno.


2.- Asociación unaria uno-a-muchos.


3.- Asociación unaria muchos-a-muchos.
M.C. Daniel Esparza Soto                        33
Herramientas CASE para el modelado
de datos




M.C. Daniel Esparza Soto             34
Visio




M.C. Daniel Esparza Soto   35
Data Architect by Thekompany




M.C. Daniel Esparza Soto       36
Data Architect by PowerDesigner




M.C. Daniel Esparza Soto          37
Metodología par resolver un espacio del
problema y encontrar su diagrama
Entidad/Relación.
1.- Encontrar las entidades normales que pudiera
tener el espacio del problema y listarlas.
2.- Determinar los atributos de cada entidad.
3.- Señalar la clave principal en cada entidad.
4.- Modelar las asociaciones existentes entre las
entidades
5.- Generar el modelo Físico.
6.- Generar la secuencia de comandos para
crear la BD y tablas.

M.C. Daniel Esparza Soto                        38
1.- Determinar las entidades


                           b
                 a




a.- Seleccionar en la barra de herramientas el botón de
entidad y arrastrarlo al área de diseño.
b.- Editar la entidad haciendo doble click sobre la entidad
en la ventana Entity Propierties.
M.C. Daniel Esparza Soto                                  39
2.- Determinar los artibutos de cada
    entidad
    a.- En la ventana Entity Property oprimir el botón
    Atributes para definir los artibutos de la entidad.
    b.- Teclear los nombres de los atributos y determinar el
    tipo de datos opriminendo el botón en dicha columna.




                                  b


a




    M.C. Daniel Esparza Soto                                   40
3.- Señalar la clave principal en cada
entidad.
a.- Seleccionar si el campo es la clave principal
(Identifier) y si el campo obligatorio (Mandatory)




                  c


b.- Obtendremos la entidad
Terminada como lo muestra
la siguiente figura.

M.C. Daniel Esparza Soto                             41
4.- Modelar las asociaciones existentes
entre las entidades.
a.- Seleccionar en la barra de herramientas el botón de
RelantionShip y arrastrarlo sobre las dos entidades que se se
quieren asociar.
b.-Para determinar el tipo de cardinalidad entre las entidades, hacer
doble click sobre la relación.




a
                     b




M.C. Daniel Esparza Soto                                                42
4.- Modelar las asociaciones existentes
entre las entidades.
c.- Escribir el nombre de la asociación.
d.- Determinar la cardinalidad de la relación : uno-a-uno, uno-a-
muchos o muchos-a-muchos.
e.- Determinar si los campos que se van a compartir son obligatorios
(Mandatory).



                           c
                               d

                           e




M.C. Daniel Esparza Soto                                           43
5.- Generar el modelo Físico

a.- Seleccionar en el Menú Dictionary la opción
Generate Physical Model.
b.- Elegir el tipo de base de datos como SQL
Server y el nombre del archivo físico PDM.

                           b

a




M.C. Daniel Esparza Soto                          44
5.- Generar el modelo Físico

c.- En la ventana de mensajes, se mostrarán los
resultados de la generación del modelo físico e
indicará si la generación fue exitosa.




M.C. Daniel Esparza Soto                          45
6.- Generar la secuencia de comandos
para crear la BD y tablas.
a.- Seleccionar en el Menú Database la opción Generate
Database.
b.- Elegir el nombre del archivo de la secuencia de
comandos y su directorio.
c.- Seleccionar la pestaña Database para configurar la
base de datos.
                           b
                               c




 a


M.C. Daniel Esparza Soto                             46
6.- Generar la secuencia de comandos
    para crear la BD y tablas.
    d.- Seleccionar la opción Create Database para generar
    también el código de creación de la base de datos.
    e.- Oprimir el botón Generate Script para generar la BD.
    f.- Se oprime el botón Si para mostrar la secuencia de
    comandos que se utilizará para generar la BD y tablas.

                                        f


d




           e
    M.C. Daniel Esparza Soto                                   47

Mais conteúdo relacionado

Destaque

Unidad v integridad relacional
Unidad v  integridad relacionalUnidad v  integridad relacional
Unidad v integridad relacionalOrlando Verdugo
 
T5 Disenio Logico
T5 Disenio LogicoT5 Disenio Logico
T5 Disenio Logicormonago
 
Diseño físico y rendimiento de la bd
Diseño físico y rendimiento de la bdDiseño físico y rendimiento de la bd
Diseño físico y rendimiento de la bdLuis Jherry
 
Diseño Eficiente BD
Diseño Eficiente BDDiseño Eficiente BD
Diseño Eficiente BDbdatos
 
Tm06 diseño bd
Tm06 diseño bdTm06 diseño bd
Tm06 diseño bdJulio Pari
 
Procesamiento de consultas
Procesamiento de consultasProcesamiento de consultas
Procesamiento de consultasUTPL UTPL
 
Metodología diseño físico de bases de datos
Metodología diseño físico de bases de datosMetodología diseño físico de bases de datos
Metodología diseño físico de bases de datosUTPL UTPL
 
Gestión de transacciones
Gestión de transaccionesGestión de transacciones
Gestión de transaccionesUTPL UTPL
 
Metodología para el desarrollo de bases de datos
Metodología para el desarrollo de bases de datosMetodología para el desarrollo de bases de datos
Metodología para el desarrollo de bases de datosUTPL UTPL
 
Diseño de almacenes de datos
Diseño de almacenes de datosDiseño de almacenes de datos
Diseño de almacenes de datosUTPL UTPL
 
La importancia de la base de datos
La importancia de la base de datosLa importancia de la base de datos
La importancia de la base de datosRaul Martinez
 
T4 Diseño conceptual
T4 Diseño conceptualT4 Diseño conceptual
T4 Diseño conceptualrmonago
 
BASE DE DATOS SISTEMA MODELO DE GESTION DE DATOS
BASE DE DATOS SISTEMA MODELO DE GESTION DE DATOSBASE DE DATOS SISTEMA MODELO DE GESTION DE DATOS
BASE DE DATOS SISTEMA MODELO DE GESTION DE DATOSmiguel a
 

Destaque (20)

Unidad ii diseño de bd
Unidad ii diseño de bdUnidad ii diseño de bd
Unidad ii diseño de bd
 
Unidad iv ddl
Unidad iv ddlUnidad iv ddl
Unidad iv ddl
 
Unidad v integridad relacional
Unidad v  integridad relacionalUnidad v  integridad relacional
Unidad v integridad relacional
 
Diapositivas de SOR II
Diapositivas de SOR IIDiapositivas de SOR II
Diapositivas de SOR II
 
T5 Disenio Logico
T5 Disenio LogicoT5 Disenio Logico
T5 Disenio Logico
 
Diseño físico
Diseño físicoDiseño físico
Diseño físico
 
Diseño físico y rendimiento de la bd
Diseño físico y rendimiento de la bdDiseño físico y rendimiento de la bd
Diseño físico y rendimiento de la bd
 
Diseño Eficiente BD
Diseño Eficiente BDDiseño Eficiente BD
Diseño Eficiente BD
 
Tm06 diseño bd
Tm06 diseño bdTm06 diseño bd
Tm06 diseño bd
 
Almacen de datos
Almacen de datosAlmacen de datos
Almacen de datos
 
Procesamiento de consultas
Procesamiento de consultasProcesamiento de consultas
Procesamiento de consultas
 
Metodología diseño físico de bases de datos
Metodología diseño físico de bases de datosMetodología diseño físico de bases de datos
Metodología diseño físico de bases de datos
 
Gestión de transacciones
Gestión de transaccionesGestión de transacciones
Gestión de transacciones
 
Seguridad
SeguridadSeguridad
Seguridad
 
Metodología para el desarrollo de bases de datos
Metodología para el desarrollo de bases de datosMetodología para el desarrollo de bases de datos
Metodología para el desarrollo de bases de datos
 
Diseño de almacenes de datos
Diseño de almacenes de datosDiseño de almacenes de datos
Diseño de almacenes de datos
 
La importancia de la base de datos
La importancia de la base de datosLa importancia de la base de datos
La importancia de la base de datos
 
T4 Diseño conceptual
T4 Diseño conceptualT4 Diseño conceptual
T4 Diseño conceptual
 
BASE DE DATOS SISTEMA MODELO DE GESTION DE DATOS
BASE DE DATOS SISTEMA MODELO DE GESTION DE DATOSBASE DE DATOS SISTEMA MODELO DE GESTION DE DATOS
BASE DE DATOS SISTEMA MODELO DE GESTION DE DATOS
 
Diseño de bases de datos
Diseño de bases de datosDiseño de bases de datos
Diseño de bases de datos
 

Semelhante a Unidad ii diseño de bd

3 modelo er
3 modelo er3 modelo er
3 modelo erramume69
 
Base datos presentacion 4
Base datos presentacion 4Base datos presentacion 4
Base datos presentacion 4XavierBeltran7
 
Base datos presentacion 4
Base datos presentacion 4Base datos presentacion 4
Base datos presentacion 4Xavier Beltrán
 
Modelo de Datos E-R
Modelo de Datos E-RModelo de Datos E-R
Modelo de Datos E-RCarol Puche
 
Unidad 2 - Modelo Entidad-Relación.ppt
Unidad 2 - Modelo Entidad-Relación.pptUnidad 2 - Modelo Entidad-Relación.ppt
Unidad 2 - Modelo Entidad-Relación.pptUPEL-IPB
 
Programación en base de datos
Programación en base de datosProgramación en base de datos
Programación en base de datosFred M. Jr.
 
E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]
E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]
E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]MiriamCarreon
 
Modelo conceptual y relacional.docx
Modelo conceptual y relacional.docxModelo conceptual y relacional.docx
Modelo conceptual y relacional.docxJimena Fagua
 
Presentacion base de datos
Presentacion base de datosPresentacion base de datos
Presentacion base de datosverosima
 
Gestionbasesdatos readthedocs io_es_latest_tema2_teoria_html
Gestionbasesdatos readthedocs io_es_latest_tema2_teoria_htmlGestionbasesdatos readthedocs io_es_latest_tema2_teoria_html
Gestionbasesdatos readthedocs io_es_latest_tema2_teoria_htmlJuan Segovia
 
Diseño logico de la base de datos
Diseño logico de la base de datosDiseño logico de la base de datos
Diseño logico de la base de datosFabricio Sanchez
 
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 datosmmazonf
 

Semelhante a Unidad ii diseño de bd (20)

Actividad base de datos 3
Actividad base de datos 3Actividad base de datos 3
Actividad base de datos 3
 
Modelo Entidad Relacion.pdf
Modelo Entidad Relacion.pdfModelo Entidad Relacion.pdf
Modelo Entidad Relacion.pdf
 
3 modelo er
3 modelo er3 modelo er
3 modelo er
 
Base datos presentacion 4
Base datos presentacion 4Base datos presentacion 4
Base datos presentacion 4
 
Base datos presentacion 4
Base datos presentacion 4Base datos presentacion 4
Base datos presentacion 4
 
Modelo de Datos E-R
Modelo de Datos E-RModelo de Datos E-R
Modelo de Datos E-R
 
Base datos t1 u2
Base datos t1 u2Base datos t1 u2
Base datos t1 u2
 
Unidad 2 - Modelo Entidad-Relación.ppt
Unidad 2 - Modelo Entidad-Relación.pptUnidad 2 - Modelo Entidad-Relación.ppt
Unidad 2 - Modelo Entidad-Relación.ppt
 
Programación en base de datos
Programación en base de datosProgramación en base de datos
Programación en base de datos
 
E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]
E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]
E51 fe208 4115-4fee-9269-c21eaa1f32c1[1]
 
Modelo conceptual y relacional.docx
Modelo conceptual y relacional.docxModelo conceptual y relacional.docx
Modelo conceptual y relacional.docx
 
Presentacion base de datos
Presentacion base de datosPresentacion base de datos
Presentacion base de datos
 
Base de Datos (UPS)
Base de Datos (UPS)Base de Datos (UPS)
Base de Datos (UPS)
 
Gestionbasesdatos readthedocs io_es_latest_tema2_teoria_html
Gestionbasesdatos readthedocs io_es_latest_tema2_teoria_htmlGestionbasesdatos readthedocs io_es_latest_tema2_teoria_html
Gestionbasesdatos readthedocs io_es_latest_tema2_teoria_html
 
Bases de datos ss14
Bases de datos ss14Bases de datos ss14
Bases de datos ss14
 
Base
BaseBase
Base
 
Diseño logico de la base de datos
Diseño logico de la base de datosDiseño logico de la base de datos
Diseño logico de la base de datos
 
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
 
Guia de bases de datos
Guia de bases de datosGuia de bases de datos
Guia de bases de datos
 
Diseno bd
Diseno bdDiseno bd
Diseno bd
 

Unidad ii diseño de bd

  • 1. Diseño de Base de Datos Relacionales Se utilizará la herramienta CASE Data Architect para realizar el modelo conceptual de la base de datos, posteriormente se migrará el modelo conceptual al modelo físico para implementarlo en el administrador de base de datos robusto SQL Server. 1
  • 2. Diseño de una Base de Datos Espacio del problema Modelo de Datos: Modelo Lógico Esquema de BD: Modelo Físico Implementación en la BD M.C. Daniel Esparza Soto 2
  • 3. Espacio del problema El espacio del problema define características con que contará la BD que se desea desarrollar. Generalmente la definición del espacio del problema se ha realizado de manera textual y en ella se define las necesidades requeridas por la BD. Una buena definición del espacio del problema se lleva a cabo analizando todos los procesos en donde se desarrollará la BD. M.C. Daniel Esparza Soto 3
  • 4. Análisis del espacio de problema 1.- Todos los documentos que presenten información capturada por los usuarios. 2.- Revisar cualquier tipo de reportes que se utilizan dentro de la empresa, esto es para obtener información relativa a los periodos de captura. 3.- Analizar los procesos internos de manejo de materiales, entradas de almacén, etc., todo esto para encontrar información no contemplada en los puntos anteriores. 4.- Si se trata de remplazar un sistema ya existente, es necesario revisar las especificaciones de dicho sistema y aportar las mejoras necesarias. M.C. Daniel Esparza Soto 4
  • 5. Espacio del problema: Ferreteria Administrar las ventas de una ferreteria llevando el control de articulos agrupados por familias. Las ventas deben llevar el registro del cliente y el empleado que realiza la venta. Es necesario reportes: De Ventas Por municipio y colonia. De ventas por zonas de empleado. M.C. Daniel Esparza Soto 5
  • 6. Espacio del problema: Lavado de automoviles Administrar una cadena de lavado de carros, donde se debe registrar el servicio proporcionado a cada vehiculo, señalando : El nombre del cliente. Marca y modelo del vehiculo, Numero de unidad de lavado, Empleado que lavó el carro y Servicios proporcionados: lavado int. , ext. , de motor, shampoo,etc. M.C. Daniel Esparza Soto 6
  • 7. Analisis del problema: Liga de futbol Realizar el control de equipos de futbol en una liga o torneo, en la liga de futbol habrá entrenadores y cada jugador solamente puede pertenecer a un equipo. La liga contará con 5 categorias: 8-10,11-12,13-14,15-16. Se contará con 2 ramas: femenil y varonil. Realizar el calendario regular y resultados de los partidos. M.C. Daniel Esparza Soto 7
  • 8. Modelo de datos Es una descripción conceptual del espacio del problema, esto incluye la definición de entidades, sus atributos y sus restricciones. También incluye una descripción de las relaciones establecidas entre las entidades y cualquier restricción que se aplique a sus relaciones. El modelo de datos se expesará entonces en función de: 1.- Entidades. 2.- Atributos. 3.- Dominios 4.- Asociaciones. M.C. Daniel Esparza Soto 8
  • 9. Entidades Una entidad es cualquier cosa que resulte necesaria en el sistema para mantener información. Cuando se empieza a diseñar el modelo de datos la recopilación de entidades es el inicio del proceso. Cuando se habla del espacio del problema, la mayoría de los nombres y verbos que se utilizan estarán sujetos a convertirse en entidades. M.C. Daniel Esparza Soto 9
  • 10. Entidades Liga de Futbol: Ferreteria: Lavado: Liga. Articulos Lavado Equipos. Familias Vehiculos Jugadores. Ventas Empleados Entrenadores. Ferreterias Clientes Categorias. Empleados Unidades Ramas. Clientes Servicios Calendario. Zonas Marcas Resultados. Colonias Modelos Municipios M.C. Daniel Esparza Soto 10
  • 11. Atributos El sistema tendrá que plasmar ciertos hechos de cada entidad. Esos hechos se refieren como los atributos de la entidad. La determinación de los atributos que hay que incluir en cada entidad es un proceso semántico, se deben tomar descisiones basadas en el significado de los datos y en cómo se utilizarán. Con el estado actual de la tecnología no hay forma de desarrollar un diseño de BD que se pueda demostrar que es correcto. Se puede probar que algunos diseños tienen fallas, pero no se puede probar que uno concreto no las tenga. M.C. Daniel Esparza Soto 11
  • 12. Atributo identificador o clave principal Una vez definidas las entidades y sus respectivos atributos debemos considerar dentro de cada entidad, un atributo principal que identifique cada elemento de la entidad, a este atributo se le conocera como identificador, clave candidata o clave principal de la entidad. Esta clave principal posteriormente se convertirá en la llave primaria de la tabla. M.C. Daniel Esparza Soto 12
  • 13. Dominios El dominio establece el conjunto de valores posibles que el atributo puede contener para hacer considerado como válido. A menudo se confunden los dominios con los tipos de datos, aunque no son exactamente lo mismo. Tipo de dato es el concepto físico, mientras que dominio es un concepto lógico. El concepto de dominio es más amplio que el tipo de datos, un dominio establece una descripción más especifica de datos que son válidos. M.C. Daniel Esparza Soto 13
  • 14. Ejemplo 1: espacio del problema, entidades y atributos. Espacio del problema: Se desea llevar el registro de unas elecciones en el estado donde se eligirá gobernador. Habrá casillas por municipios y se tendrán candidatos por partidos políticos. Es necesario un reporte de los ciudadanos que esten dados de alta en las casillas. Un reporte final de votaciones por candidatos en cada municipio y en cada casilla. M.C. Daniel Esparza Soto 14
  • 15. Asociaciones Además de los atributos de cada entidad, un modelo de datos debe especificar las asociaciones existentes entre las entidades. En el nivel conceptual, las asociaciones son simplemente relaciones existentes entre entidades. Las entidades se clasifican en : - Entidades participantes. - Grado de una asociación. M.C. Daniel Esparza Soto 15
  • 16. Entidades participantes Son las entidades que participan en una asociación. Se clasificán en : 1.- Entidades débil: Es la entidad que sólo puede existir en relación a otra entidad. También se le conoce como entidad con participación total en la asiciación debido a que sólo existe si existe la asociación. 2.- Entidad normal: Es la entidad que puede existir por si misma en la asociación. También se le conoce como entidad con participación parcial. M.C. Daniel Esparza Soto 16
  • 17. Entidades participantes Clientes Pedidos E. Normal E. débil Familias Productos E. Normal E. débil M.C. Daniel Esparza Soto 17
  • 18. Clasificación de entidades 1.- Entidad Principal: Es la entidad que compartirá su clave principal con la otra entidad la cual se le conocerá como entidad externa. La entidad principal siempre es la entidad normal. 2.- Entidad Externa: Es la entidad que contendrá la clave principal de la entidad principal. Generalmente es la entidad débil. M.C. Daniel Esparza Soto 18
  • 19. Entidades participantes Clientes Pedidos E. Normal E. débil E. Principal E. Externa Familias Productos E. Normal E. débil E. Principal E. Externa M.C. Daniel Esparza Soto 19
  • 20. Grado de una asociación Es el numero de entidades participantes en una asociación, se clasifican en : 1.- Asociación unaria: Es una asociación de una entidad consigo misma. 2.- Asociación binaria: Es una asociación entre 2 entidades, este es el tipo de asociación más común. 3.- Asociaciones ternarias: Es una asociación donde intervienen 3 entidades, este tipo de asociación es el menos conocido. M.C. Daniel Esparza Soto 20
  • 21. Cardinalidad de la asociación Es el número máximo de ejemplares de una entidad que se pueden asociar con un ejemplar de otra entidad. Hay 3 variaciones: 1.- Asociación uno-a-uno. 2.- Asociación uno-a-muchos. 3.- Asociación muchos-a-muchos. M.C. Daniel Esparza Soto 21
  • 22. Asociación uno-a-uno Este tipo de asociaciones ocurre cuando un ejemplar de la entidad X se puede asociar tan solo con un ejemplar de la entidad Y. Cuando se eligen las asociaciones uno-a-uno entre entidades hay que asegurarse de que la asociación se mantiene en todo momento y en caso de que cambie no nos interesan los valores pasados. Estas asociaciones son raras en el mundo real, pero son muy comunes y útiles como concepto abstracto. Se utilizan principalmente para reducir el numero de atributos de una relación o para modelar las subclases de las entidades. M.C. Daniel Esparza Soto 22
  • 23. Asociaciones uno-a-uno En estas asociación cualquiera de las 2 entidades puede ser la entidad principal o la entidad externa. La elección depende de las especificaciones del espacio del problema. Una vez elegida cada una de ellas, se procede a copiar la clave principal que pertenece a la entidad principal a los atributos de la entidad externa. Este nuevo atributo dentro de la entidad externa se deberá marcar como entidad única o campo único. M.C. Daniel Esparza Soto 23
  • 24. Ejemplo: asociaciones uno-a-uno Modelar la asociación que existe entre empleados y despachos en un edificio en donde en cada despacho solamente puede trabajar un empleado. E. principal E. Externa despachos Empleados Atributos: Numero Clave Dimensiones Nombre Baños Domicilio Ventanas Fecha Nac. M.C. Daniel Esparza Soto NumeroDesp (unico) 24
  • 25. Solución II: despachos Empleados E. Externa E. principal Atributos: Numero Clave Dimensiones Nombre Baños Domicilio Ventanas Fecha Nac. Clave(unico) M.C. Daniel Esparza Soto 25
  • 26. Asociación uno-a-muchos Es el más común entre las entidades y es donde un ejemplar de una entidad se puede asociar con uno o muchos ejemplares de otra entidad. La entidad del lado de uno de la asociación siempre es la relación principal, su clave principal se copia en la relación del lado muchos que se convierte en la relación externa, por lo tanto, la entidad del lado de muchos siempre es la relación externa. M.C. Daniel Esparza Soto 26
  • 27. Ejemplo: asociaciones uno-a-muchos Modelar la asociación que existe entre estados y municipios donde cada estado tiene muhcos municipios. Estados Municipios Atributos: ClaveEdo ClaveMpio Nombre Nombre Tamaño Tamaño ClaveEdo M.C. Daniel Esparza Soto 27
  • 28. Ejemplos: 1.- Realizar el modelo lógico de paises, estados, municipios y colonias. 2.- Modelar una empresa donde cada empleado tiene derecho a un cajon de estacionamiento. Además llevar el registro de los cajones existentes por piso. Los empleados estan asignados a un departamento en la empresa. M.C. Daniel Esparza Soto 28
  • 29. Asociación muchos-a-muchos Este tipo de asociaciones relaciona los elementos de una entidad contra todos los elementos de la otra entidad. Se puede considerar una relación doble uno-a-muchos en ambos sentidos. Este tipo de asociaciones genera una tercera entidad abstracta llamada tabla unión la cual tendrá asociaciones uno-a-muchos dirigida a ella por el lado de muchos. Por lo tanto tendremos 2 entidades principales las cuales heredarán sus claves principales a la tabla unión que será la relación externa. Esta tabla unión, por lo tanto tendrá las claves principales de las entidades principales como su propia clave principal. M.C. Daniel Esparza Soto 29
  • 30. Ejemplo: asociaciones muchos-a-muchos Modelar la asociación entre alumnos y materias donde un alumnos puede tomar clases en muchas materias y una materia puede tener muchos alumnos. Materias Alumnos Se convierte en : Materias T. unión Alumnos Atributos: ClaveMateria Matricula Matricula Nombre ClaveMateria Nombre Créditos M.C. Daniel Esparza Soto Dirección 30
  • 31. 1.- Realizar el modelo lógico de la relación que existe entre almacenes y materiales, donde cada material puede estar guardado en varios almacenes. 2.- Realizar el modelo lógico para el prestamo de libros en una biblioteca, llevando el control de prestamos de cada alumno. M.C. Daniel Esparza Soto 31
  • 32. Asociaciones binaria Modelar la asociación entre Despachos y Empleados en cada uno de estos casos: 1.- Asociación binaria uno-a-uno. 2.- Asociación binaria uno-a-muchos. 3.- Asociación binaria muchos-a-muchos. M.C. Daniel Esparza Soto 32
  • 33. Asociaciones unarias Modelar la asociación entre Empleados y Jefes ( que también son empleados) para cada uno de estos casos: 1.- Asociación unaria uno-a-uno. 2.- Asociación unaria uno-a-muchos. 3.- Asociación unaria muchos-a-muchos. M.C. Daniel Esparza Soto 33
  • 34. Herramientas CASE para el modelado de datos M.C. Daniel Esparza Soto 34
  • 36. Data Architect by Thekompany M.C. Daniel Esparza Soto 36
  • 37. Data Architect by PowerDesigner M.C. Daniel Esparza Soto 37
  • 38. Metodología par resolver un espacio del problema y encontrar su diagrama Entidad/Relación. 1.- Encontrar las entidades normales que pudiera tener el espacio del problema y listarlas. 2.- Determinar los atributos de cada entidad. 3.- Señalar la clave principal en cada entidad. 4.- Modelar las asociaciones existentes entre las entidades 5.- Generar el modelo Físico. 6.- Generar la secuencia de comandos para crear la BD y tablas. M.C. Daniel Esparza Soto 38
  • 39. 1.- Determinar las entidades b a a.- Seleccionar en la barra de herramientas el botón de entidad y arrastrarlo al área de diseño. b.- Editar la entidad haciendo doble click sobre la entidad en la ventana Entity Propierties. M.C. Daniel Esparza Soto 39
  • 40. 2.- Determinar los artibutos de cada entidad a.- En la ventana Entity Property oprimir el botón Atributes para definir los artibutos de la entidad. b.- Teclear los nombres de los atributos y determinar el tipo de datos opriminendo el botón en dicha columna. b a M.C. Daniel Esparza Soto 40
  • 41. 3.- Señalar la clave principal en cada entidad. a.- Seleccionar si el campo es la clave principal (Identifier) y si el campo obligatorio (Mandatory) c b.- Obtendremos la entidad Terminada como lo muestra la siguiente figura. M.C. Daniel Esparza Soto 41
  • 42. 4.- Modelar las asociaciones existentes entre las entidades. a.- Seleccionar en la barra de herramientas el botón de RelantionShip y arrastrarlo sobre las dos entidades que se se quieren asociar. b.-Para determinar el tipo de cardinalidad entre las entidades, hacer doble click sobre la relación. a b M.C. Daniel Esparza Soto 42
  • 43. 4.- Modelar las asociaciones existentes entre las entidades. c.- Escribir el nombre de la asociación. d.- Determinar la cardinalidad de la relación : uno-a-uno, uno-a- muchos o muchos-a-muchos. e.- Determinar si los campos que se van a compartir son obligatorios (Mandatory). c d e M.C. Daniel Esparza Soto 43
  • 44. 5.- Generar el modelo Físico a.- Seleccionar en el Menú Dictionary la opción Generate Physical Model. b.- Elegir el tipo de base de datos como SQL Server y el nombre del archivo físico PDM. b a M.C. Daniel Esparza Soto 44
  • 45. 5.- Generar el modelo Físico c.- En la ventana de mensajes, se mostrarán los resultados de la generación del modelo físico e indicará si la generación fue exitosa. M.C. Daniel Esparza Soto 45
  • 46. 6.- Generar la secuencia de comandos para crear la BD y tablas. a.- Seleccionar en el Menú Database la opción Generate Database. b.- Elegir el nombre del archivo de la secuencia de comandos y su directorio. c.- Seleccionar la pestaña Database para configurar la base de datos. b c a M.C. Daniel Esparza Soto 46
  • 47. 6.- Generar la secuencia de comandos para crear la BD y tablas. d.- Seleccionar la opción Create Database para generar también el código de creación de la base de datos. e.- Oprimir el botón Generate Script para generar la BD. f.- Se oprime el botón Si para mostrar la secuencia de comandos que se utilizará para generar la BD y tablas. f d e M.C. Daniel Esparza Soto 47