dbmain
TRANSCRIPT
![Page 1: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/1.jpg)
1
DB-MainBases de Datos
E.U.I.T.I.O
Belén MartínezLuis Vinuesa Bases de Datos
Introducción
Fases del Ciclo de Vida
Análisis de RequisitosDiseño de la Estructura ConceptualDiseño LógicoRefinamiento por el usoDiseño FísicoImplementaciónPrueba, Monitorización y Mantenimiento
DB-Main
![Page 2: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/2.jpg)
2
Belén MartínezLuis Vinuesa Bases de Datos
Introducción
n Herramienta Case desarrollada inicialmente como un proyecto de investigación (1991) en la Universidad de Namur (Francia)
n Comercializada desde enero de 2004
n Soporta el modelado conceptual, lógico y físico
n Accesible en:n http://www.db-main.be/
Belén MartínezLuis Vinuesa Bases de Datos
Pasos en la creación de un modelon 1) Crear un proyecto -> File/New Projectn 2) Definir un esquema -> Product/ New Scheman 3) Especificación de los elementos del modelo:
n Entidades -> New Entity-typen Relaciones -> New Rel-typen Atributos -> New Attribute
n 4) Generar BD SQL -> Transform /Quick SQLn 5) Guardar Proyecto -> File /Save Project
![Page 3: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/3.jpg)
3
Belén MartínezLuis Vinuesa Bases de Datos
Visualización del esqueman 1) Vistas gráficas
n Compacta -> View/Graph compactn Estándar -> View/Graph standardn Para configurar características de estas vistas: View/Graphical settings
n 2) Vistas Textualesn Compacta -> View/Text compactn Estándar -> View/Text standardn Extendida -> View/Text extendedn Ordenada -> View/Text sorted
Belén MartínezLuis Vinuesa Bases de Datos
Modelado ConceptualElementos Soportados
n 1) Tipo entidadn Representa un conjunto de objetos similares, o entidades, que tienen cierta
relevancia en el dominio de la aplicación
n 2) Atributosn Representan una propiedad de un tipo entidadn Se caracterizan por
n Tipo: numérico, carácter, fecha,…n Longitudn Cardinalidad, se representa como [0-1],[1-1],…
n Si el límite inferior es 0 -> atributo opcionaln Si el límite inferiior es <>0 -> atributo obligatorion Si el límite superior es >1 -> atributo multivaluado (ej. teléfono de una persona)n Si la cardinalidad es [0-1] ó [1-1] ->atributo monovaloradon Se pueden especificar atributos compuestos con DB-main (atributos que pueden
descomponerse en otros atributos significativos). Para ello se selecciona el atributo compuesto ypulsamos “First att” en la barra de herramientas. A partir de ahí se pueden especificar los atributos componentes.
![Page 4: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/4.jpg)
4
Belén MartínezLuis Vinuesa Bases de Datos
Modelado Conceptual (II)Elementos Soportados
n 3) Tipos de Relacionesn Representa asociaciones entre tipos de entidadesn Características:
n Papel. Cada entidad participante juega un rol o papel caracterizado por una restricción de cardinalidad expresada con un par de símbolos tales como [1-0],[1-1]
n Grado. El número de entidades implicadas pueden ser 2(binarias), 3 (ternarias) y en general N-arias.
n Atributos. Las relaciones pueden contar con atributos descriptivosn En las relaciones cíciclas (entre la misma entidad) es necesario especificar
explícitamente el nombre de los roles
Belén MartínezLuis Vinuesa Bases de Datos
Modelado Conceptual (III)Elementos soportados
n 4) Identificadoresn Representan un grupo de atributos que cualifican únicamente las
entidades de un tipon Puede definirse identificadores primarios (id) y secundarios (id’)
n 5) Subtipos y Supertiposn Soporta la especificación de subtipos-supertipos (relación ISA)n Los subtipos heredan de los supertipos atributos, identificadores, roles y
restricciones de integridadn Las propiedades de los subtipos se especifican en el supertipo:
n Disjunto (D) -> los subtipos son disjuntosn Total (T) -> Cada entidad del supertipo debe pertenecer a alguno de los
subtiposn Partición (P) = Disjunto (D) + Total (T)
![Page 5: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/5.jpg)
5
Belén MartínezLuis Vinuesa Bases de Datos
Modelado Conceptual (IV)Elementos soportados
n 6) Atributos coexistentes n Son atributos que algunas entidades tienen valores para ellos mientras que otras no lo tienenn Ej. Si una persona tiene carnet de conducir es necesario almacenar: fecha expedición y tipo.
Sin embargo, si no tiene carnet no almacenaremos ninguno de esos valores=> Atributos coexistentes.
n Para especificarlos es necesario crear un grupo de coexistencia o bien una agregación (Transform/Group/Aggregation)
n 7) Atributos exclusivosn Son atributos que no pueden tomar valores simultáneamente en la misma entidadn Ej. Una pesona puede estar en el régimen de la Ssocial o bien Muface, pero no puede estar en
ambos.n Esta propiedad puede aplicarse a atributos pero también a grupos de atributos coexistentesn Para especificarlo es necesario crear un grupo exclusivo
n 8) Restricción de “al menos uno”n Se emplea para indicar que al menos uno de los atributos debe tomar un valorn En el caso anterior implicaría que una persona está (obligatoriamente) en el régimen de la
Ssocial o bien en Muface. d l ó l
Belén MartínezLuis Vinuesa Bases de Datos
Modelado Conceptual (V)Elementos no soportados
n Esta herramienta no soporta la especificación gráfica den Atributos derivadosn Entidades débiles.n Limitantes de exclusiónn Limitantes de subconjunto
![Page 6: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/6.jpg)
6
Belén MartínezLuis Vinuesa Bases de Datos
Modelado Lógico
n DB-main como modelo lógico emplea el modelo relacionalEquivalencias
dbspace, tablespace,…Colección de entidad
IndiceClave de acceso
Clave ajena (Foreign Key)Grupo de referencia
Clave candidatoIdentificador secundario
Clave primariaIdentificador primario
ColumnaAtributo
TablaTipo de Entidad
Modelo Relacional (SQL)Modelo E-R
Belén MartínezLuis Vinuesa Bases de Datos
Modelado LógicoTransformación en un esquema lógico
n 1) Hacer una copia del esqueman Product/Copy Schema
n 2) Generar estructuras relacionalesn Transform/Relational Model
n 3) Especificación de claves ajenas (atributos referencia)n Atributos cuyo valor actúa como referencia a otras entidadesn DB-main emplea para ello grupos de referencia (ya que puede ser más de
un atributo)n Forma de especificarlas:
n Seleccionar atributo (o atributos) y pulsar GRn Hacer doble click y en el cuadro de diálogo “Constraint Properties” indicar:
n Tipo de restricción: refn Entidad principal: target entity type
![Page 7: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/7.jpg)
7
Belén MartínezLuis Vinuesa Bases de Datos
Modelado FísicoTransformación en un esquema físico
n 1) Hacer una copia del esqueman Product/Copy Schema
n 2) Especificar elementos del modelo físicon Claves de Acceson Colecciones de Entidades
Belén MartínezLuis Vinuesa Bases de Datos
Modelado Físico
n Claves de Acceson Representan estructuras de datos que proporcionan un acceso eficiente a
los registros de datos. Normalmente son índices.
n Por lo general:n Cada identificador se convierte en una clave de acceson Cada foreign key se convierte también en una clave de acceso. No es
obligatorio.
n Para especificar una clave de acceso en db-mainn Seleccionar el atributo (o conjunto de atributos) y crear un grupon Hacer doble click para acceder a la Property box y activar la opción
Acces Key
![Page 8: dbmain](https://reader035.vdocuments.co/reader035/viewer/2022081908/5536bf714a79594b1b8b4aa7/html5/thumbnails/8.jpg)
8
Belén MartínezLuis Vinuesa Bases de Datos
Modelado Físico (II)
n Colecciones de Entidadesn Una base de datos es almacenada en unidades de almacenamiento que
dependen del SGBD: ficheros, datasets, dbspaces, tablespaces, etc.
n Db-main utiliza el término entity collection para hacer referencia a estas unidades de almacenamiento
n Especificación en db-main:n Para crear una colección de entidades hay que seleccionar la opción New-Collectionn Hacer doble click, y en el cuadro de diálogo que aparece especificar las tablas
cuyas entidades van a ser almacenadas en dicha colecciónn En una colección puede almacenarse cualquier número de tablas y una tabla puede
almacenarse en varias colecciones. Algunos SGBD imponen restricciones sobre esto
Belén MartínezLuis Vinuesa Bases de Datos
Generación de SQL
n 1) Hacer una copia del esqueman Product/Copy Schema
n 2) Generación de SQLn File/Generate/Estándar SQL
n Previamente a la generación del SQL es necesario comprobar que los nombres de atributos/relaciones son válidos en SQL. Por si nofuese así db-main incorpora una utilidad para cambiar los nombresde una forma más cómoda: Transform/Name Processing