23
UCLM - F.Ruiz 1 Diseño y Creación de BD Diseño y Creación de BD Universidad de Castilla Universidad de Castilla - - La Mancha La Mancha 3 3 Etapas propuestas Etapas propuestas Francisco Ruiz Francisco Ruiz octubre octubre - - noviembre 2002 noviembre 2002

Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 1

Diseño y Creación de BDDiseño y Creación de BD

Universidad de CastillaUniversidad de Castilla--La ManchaLa Mancha

33Etapas propuestasEtapas propuestas

Francisco RuizFrancisco Ruizoctubreoctubre--noviembre 2002noviembre 2002

Page 2: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 2

Contenidos (i)Contenidos (i)!! Métodos de diseño.Métodos de diseño.

–– Concepto.Concepto.–– Tipos.Tipos.–– Método propuesto.Método propuesto.

»» Características.Características.»» Etapas.Etapas.

!! Conceptos utilizados.Conceptos utilizados.–– Tablas.Tablas.–– Campos y Tipos de Datos.Campos y Tipos de Datos.–– Claves e índices.Claves e índices.–– Relaciones.Relaciones.

Page 3: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 3

Contenidos (ii)Contenidos (ii)!! Identificar necesidades.Identificar necesidades.!! Diseño inicial.Diseño inicial.!! Diseño detallado.Diseño detallado.

Page 4: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 4

Métodos de DiseñoMétodos de Diseño

!! Conjunto de prácticas y conceptos para Conjunto de prácticas y conceptos para diseñar una clase de sistema.diseñar una clase de sistema.

!! También llamados metodologías.También llamados metodologías.!! Tipos de métodos:Tipos de métodos:

–– Formales: Técnicas precisas y definidas, Formales: Técnicas precisas y definidas, lenguajes elaborados (no lenguaje natural).lenguajes elaborados (no lenguaje natural).

–– Informales: Prácticas no precisas y lenguajes no Informales: Prácticas no precisas y lenguajes no precisos.precisos.

–– El lenguaje es un factor determinante en la El lenguaje es un factor determinante en la dificultad del diseño.dificultad del diseño.

Page 5: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 5

Componentes básicos de una metodología

ABCD

MODELOS O TEORÍAS

LENGUAJES

WWWW WWWW WWWW

DOCUMENTACION

OTRAS HERRAMIENTAS

A U B →→→→ CEnt. →→→→ Rel.Int N:M →→→→ R

REGLAS

Page 6: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 6

Características del método propuesto Características del método propuesto (i)(i)

!! Para BD/SGBD relacionales.Para BD/SGBD relacionales.!! Informal => Ágil.Informal => Ágil.

–– No requiere conocimientos técnicos.No requiere conocimientos técnicos.–– No utiliza ningún lenguaje formal (matemático No utiliza ningún lenguaje formal (matemático

o informático).o informático).–– Pero ... => No garantías de buenos resultados Pero ... => No garantías de buenos resultados

en casos de complejidad alta.en casos de complejidad alta.

Page 7: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 7

Características del método propuesto Características del método propuesto (ii)(ii)

!! Iterativo:Iterativo:–– Se repiten las tres etapas tantas veces como sea Se repiten las tres etapas tantas veces como sea

necesario.necesario.!! Incremental:Incremental:

–– En cada ciclo se añaden nuevos datos a la BD, En cada ciclo se añaden nuevos datos a la BD, se incorporan al diseño inicial y se se incorporan al diseño inicial y se implementan en el diseño detallado.implementan en el diseño detallado.

!! Ventaja principal:Ventaja principal:–– La mayoría de las veces no se conocen todas las La mayoría de las veces no se conocen todas las

necesidades de los usuarios desde el principio.necesidades de los usuarios desde el principio.

Page 8: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 8

Características del método propuesto Características del método propuesto (iii)(iii)

!! Etapas:Etapas:–– Identificar necesidades.Identificar necesidades.

»» Conseguir información sobre la BD.Conseguir información sobre la BD.!! P.e.: estudiar los documentos escritos disponibles.P.e.: estudiar los documentos escritos disponibles.

–– Diseño inicial.Diseño inicial.»» Definir la estructura general de la BD.Definir la estructura general de la BD.

–– Diseño detallado.Diseño detallado.»» Definir los detalles necesarios para su Definir los detalles necesarios para su

implementación en un ordenador.implementación en un ordenador.»» Se crea la BD en el ordenador.Se crea la BD en el ordenador.

Page 9: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 9

Características del método propuesto Características del método propuesto (iii)(iii)

!! Etapas:Etapas:–– Identificar necesidades.Identificar necesidades.

»» Conseguir información sobre la BD.Conseguir información sobre la BD.!! P.e.: estudiar los documentos escritos disponibles.P.e.: estudiar los documentos escritos disponibles.

–– Diseño inicial.Diseño inicial. (papel y lápiz)(papel y lápiz)–– Definir la estructura general de la BD.Definir la estructura general de la BD.–– Diseño detallado.Diseño detallado. (ordenador y SGBD)(ordenador y SGBD)

»» Definir los detalles necesarios para su Definir los detalles necesarios para su implementación en un ordenador.implementación en un ordenador.

»» Se crea la BD en el ordenador.Se crea la BD en el ordenador.

Page 10: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 10

Conceptos Conceptos (i)(i)

!! Tabla:Tabla: Contenedor de los datos de una Contenedor de los datos de una determinada determinada clase de objetosclase de objetos..

»» Nombre.Nombre.»» Columnas: atributos / propiedades / Columnas: atributos / propiedades / camposcampos..»» Filas: datos de un objeto individual.Filas: datos de un objeto individual.

Nombre Nacionalidad Institución

Date, C.J.

Codd, E.F.

Ceri, S.

De Miguel, A.

Norteamericana

Norteamericana

Italiana

Española

Relational Institute

Relational Institute

Politécnico de Milan

UC3M

Campos o atributosFILAS

AUTOR

Page 11: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 11

Conceptos Conceptos (ii)(ii)

!! Cada Cada campocampo tiene una serie de propiedades:tiene una serie de propiedades:–– Nombre.Nombre.–– Tipo de DatoTipo de Dato: tipo de valores que puede tener.: tipo de valores que puede tener.

»» Entero, Fecha, Texto, ...Entero, Fecha, Texto, ...

–– Valor por defecto (predeterminado).Valor por defecto (predeterminado).–– Requerido (SI=> no admite valores nulos).Requerido (SI=> no admite valores nulos).–– Indexado (SI => forma un índice de Indexado (SI => forma un índice de

ordenaciónordenación--búsqueda).búsqueda).

Page 12: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 12

Conceptos Conceptos (iii)(iii)

!! Claves:Claves:–– Uno o más campos de una tabla que permiten Uno o más campos de una tabla que permiten

distinguir a cada objeto individual (fila) de los distinguir a cada objeto individual (fila) de los demás.demás.

»» => No puede haber dos filas con igual valor.=> No puede haber dos filas con igual valor.–– Clave primariaClave primaria: La principal utilizada en una : La principal utilizada en una

tabla (cuando existen varias).tabla (cuando existen varias).»» Ejemplos: Ejemplos: dni dni de Persona, código de asignatura.de Persona, código de asignatura.

–– ÍndiceÍndice: otras claves que no son primarias que : otras claves que no son primarias que interesa poder buscar rápidamente por ellas.interesa poder buscar rápidamente por ellas.

Page 13: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 13

Conceptos Conceptos (iv)(iv)

!! Una BD relacional es una colección de tablas ...Una BD relacional es una colección de tablas ...!! Pero ... entonces, ¿Representa la figura una BD Pero ... entonces, ¿Representa la figura una BD

relacional?relacional?

4.2 Ajeas

Page 14: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 14

Conceptos Conceptos (v)(v)!! Respuesta: NO, porqué una BD (relacional o de otro tipo) Respuesta: NO, porqué una BD (relacional o de otro tipo)

es una colección de datos es una colección de datos interrelacionadosinterrelacionados..=> Necesitamos asociar unas tablas con otras.=> Necesitamos asociar unas tablas con otras.

Se llama clave ajena de una tabla R2 a un conjunto de campos cuyos valores han de coincidir con los valores de la clave primaria de una tabla R1.

- R1 y R2 pueden ser la misma tabla.

- La clave ajena y la correspondiente clave primaria deben tener el mismo tipo de dato.

- 1 R1 se asocia con muchos R2.

Page 15: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 15

Conceptos Conceptos (vi)(vi)Ejemplo de claves primarias y ajenas

4.2 Ajenas

AUTOR (Nombre, Nacionalidad, Institución, …)

LIBRO (Código, Título, Idioma, Editorial, …)

ESCRIBE (Nombre, Cod_Libro)clave ajena clave ajena

Los atributos que forman la clave primaria se muestran subrayadoLos atributos que forman la clave primaria se muestran subrayadoss

Page 16: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 16

Conceptos Conceptos (vii)(vii)

!! Propiedades de las Propiedades de las claves ajenasclaves ajenas::–– Tablas origen y destino.Tablas origen y destino.–– Campos de la tabla origen.Campos de la tabla origen.–– Campos de la tabla destino (los de la clave Campos de la tabla destino (los de la clave

primaria).primaria).–– Exigir integridad referencial.Exigir integridad referencial.–– Actualizar / Eliminar en cascada.Actualizar / Eliminar en cascada.

Page 17: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 17

Identificar necesidadesIdentificar necesidades

!! El resultado es un documento en lenguaje El resultado es un documento en lenguaje natural (Castellano) incluyendo la lista de natural (Castellano) incluyendo la lista de necesidades.necesidades.

!! Pasos:Pasos:–– Estudiar los documentos existentes.Estudiar los documentos existentes.–– Decidir los datos que deben almacenarse en la Decidir los datos que deben almacenarse en la

BD.BD.

Page 18: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 18

Identificar necesidades: Ejemplo Identificar necesidades: Ejemplo (i)(i)

!! Base de Datos de CD’s de una tienda de música:Base de Datos de CD’s de una tienda de música:–– a) Existen dos tipos de obras: los CD’s individuales y las a) Existen dos tipos de obras: los CD’s individuales y las

colecciones. Las obras se identifican por su clave (parecida al colecciones. Las obras se identifican por su clave (parecida al ISBN de los libros) que es general para todo el mundo. También ISBN de los libros) que es general para todo el mundo. También tienen un nombre.tienen un nombre.

–– b) Cada CD se puede identificar también por un número asignado b) Cada CD se puede identificar también por un número asignado por la propia tienda (#por la propia tienda (#cdcd). Tiene un precio venta al público (PVP).). Tiene un precio venta al público (PVP).

–– c) Cada CD incluye varias pistas, que están numeradas (1,2,3, …)c) Cada CD incluye varias pistas, que están numeradas (1,2,3, …). . De cada pista nos interesa el título de la canción que contiene De cada pista nos interesa el título de la canción que contiene y su y su duración. Dos o mas canciones de distintos CD’s pueden tener el duración. Dos o mas canciones de distintos CD’s pueden tener el mismo título.mismo título.

–– d) A cada colección pertenecen varios CD’s. Una colección tiene d) A cada colección pertenecen varios CD’s. Una colección tiene un promotor y un PVP (que se cobra al adquirirla entera), que un promotor y un PVP (que se cobra al adquirirla entera), que suele ser mas bajo que la suma de los PVP’s de los CD’s que la suele ser mas bajo que la suma de los PVP’s de los CD’s que la forman.forman.

Page 19: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 19

Identificar necesidades: Ejemplo Identificar necesidades: Ejemplo (ii)(ii)

!! Base de Datos de CD’s de una tienda de música:Base de Datos de CD’s de una tienda de música:–– e) Cada CD ha sido realizado por uno o varios artistas. Los artie) Cada CD ha sido realizado por uno o varios artistas. Los artistas stas

se identifican por su nombre. También interesa conocer de ellos se identifican por su nombre. También interesa conocer de ellos el el país y el estilo musical (país y el estilo musical (rockrock, country, flamenco, música española, , country, flamenco, música española, etc).etc).

–– f) Los artistas pueden ser personas individuales o grupos. Para f) Los artistas pueden ser personas individuales o grupos. Para los los grupos interesa conocer también el número de componentes y sus grupos interesa conocer también el número de componentes y sus nombres.nombres.

–– g) Se quiere tener otro fichero con datos de las compañías g) Se quiere tener otro fichero con datos de las compañías discográficas: su nombre (que las identifica), su dirección en discográficas: su nombre (que las identifica), su dirección en España (calle, número y código postalEspaña (calle, número y código postal--cpcp--) y el país donde tienen ) y el país donde tienen la sede central.la sede central.

Page 20: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 20

Identificar necesidades: Ejemplo Identificar necesidades: Ejemplo (iii)(iii)

!! Base de Datos de CD’s de una tienda de música:Base de Datos de CD’s de una tienda de música:–– h) Cada compañía ha editado una o varias obras. Cada obra sólo lh) Cada compañía ha editado una o varias obras. Cada obra sólo la a

puede editar la compañía propietaria de sus derechos, pero estospuede editar la compañía propietaria de sus derechos, pero estosderechos pueden cambiar a otra compañía con el tiempo (por derechos pueden cambiar a otra compañía con el tiempo (por compra, cesión, etc). De cada obra puede haber varias ediciones compra, cesión, etc). De cada obra puede haber varias ediciones realizadas por la misma compañía (o por varias distintas si los realizadas por la misma compañía (o por varias distintas si los derechos han cambiado). Por tanto, de cada edición de cada obra derechos han cambiado). Por tanto, de cada edición de cada obra interesa conocer la compañía que la ha realizado, así como su interesa conocer la compañía que la ha realizado, así como su fecha.fecha.

–– i)i) Por último, se quiere saber para cada obra cual es la compañía Por último, se quiere saber para cada obra cual es la compañía propietaria actualmente de los derechos (se necesita para saber propietaria actualmente de los derechos (se necesita para saber a a quién pedir mas ejemplares de la obra en caso de necesidad).quién pedir mas ejemplares de la obra en caso de necesidad).

Page 21: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 21

Diseño inicial Diseño inicial (i)(i)

!! El resultado son 2 documentos:El resultado son 2 documentos:–– 1. 1. DiagramaDiagrama con la arquitectura de la BD.con la arquitectura de la BD.–– 2. Lista de tablas y sus propiedades.2. Lista de tablas y sus propiedades.

Tabla 1 (clave)

Tabla 2 (clave)

Tabla 3 (clave)

Tabla n (clave)

camposcampos

campos

Page 22: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 22

Diseño inicial Diseño inicial (ii)(ii)

!! El resultado son 2 documentos:El resultado son 2 documentos:–– 1. Diagrama con la arquitectura de la BD.1. Diagrama con la arquitectura de la BD.–– 2. 2. Lista de tablasLista de tablas y sus propiedades.y sus propiedades.

Tabla1 Tabla3 Campo 1 (clave) Campo 1 (clave) Campo 2 Campo 2 Campo 3 →→→→ Tabla 2 Campo n Campo n Tabla n Tabla 2 Campo 1 (clave) Campo 1 (clave) Campo 2 →→→→ Tabla 3 Campo 2 →→→→ Tabla 3 Campo 3 Campo n Campo n

Nombre de la tablaNombres de los camposCuales forman la claveCuales apuntan a otra tabla

Page 23: Diseño y Creación de BD - UCLM · UCLM - F.Ruiz 1 Diseño y Creación de BD Universidad de Castilla-La Mancha 3 Etapas propuestas Francisco Ruiz octubre-noviembre 2002

UCLM - F.Ruiz 23

Diseño detallado (i)Diseño detallado (i)

!! El resultado es la base de datos creada y El resultado es la base de datos creada y preparada en un ordenador para contener preparada en un ordenador para contener datos.datos.

!! Pasos:Pasos:–– Crear cada tabla:Crear cada tabla:

»» Añadir sus campos con sus propiedades.Añadir sus campos con sus propiedades.»» Identificar la clave primaria.Identificar la clave primaria.

–– Crear cada relación.Crear cada relación.