Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1
Experiencia de Aprendizaje 1: Construyendo un modelo conceptual simple.
¿Qué necesitamos saber de las Bases de Datos?
¿Qué es una base de datos?
Existen diferentes definiciones de lo que es una base de datos. De acuerdo a la Real Academia
Española se define como: “Conjunto de datos organizado de tal modo que permita obtener con
rapidez diversos tipos de información”.
También se define como base de datos a una colección de datos que pertenecen a un mismo
contexto y que son almacenados o guardados para su posterior uso.
En el área Informática, una base de datos es una colección organizada de datos estructurados que
normalmente se almacena de forma electrónica en un Sistema Gestor de Base de Datos.
¿Qué es un dato?
Un dato es una representación simbólica, la cual puede ser fácilmente vista como números, letras,
imágenes, hechos, situaciones, entre otros. El dato es cualquier secuencia de uno o más símbolos a
los que se les da significado. El significado del dato cambia dependiendo dentro del contexto en que
se encuentre.
2
Datos Personales:
Juan Pérez
Santiago
Jperez
Sano
$650.000
Lector
¿Qué es información?
La información es un conjunto de datos que han sido organizados, procesados y/o preparados y
entregan un mensaje que va a contribuir a tomar decisiones frente a un determinado problema y/o
situación que se presenta en la vida cotidiana. Además, se debe considerar que los datos requieren
ser interpretados para convertirse en información.
Por ejemplo: Una lista de productos y su stock sin ningún orden son datos, pero una lista de
productos ordenados por stock (de menor a mayor) representa información para el encargado de
compras y adquisiciones de un supermercado.
3
Enfoque de Base de Datos.
Previo al uso de las bases de datos, fue utilizado el enfoque de archivos tradicionales donde los
datos se almacenan en archivos individuales, exclusivos para cada aplicación particular. En este
enfoque los datos pueden ser redundantes (repetidos innecesariamente), se encuentran
descentralizados y la actualización de los archivos es más lenta que en una base de datos.
Las organizaciones para lograr un efectivo tratamiento de los datos han optado por trabajar con
Bases de Datos. Este enfoque indica que una base de datos es un conjunto de datos relacionados y
almacenados en forma permanente, usados por múltiples usuarios con variados propósitos para
satisfacer las necesidades de información de la organización.
Este enfoque tiene dos propiedades importantes:
▪ Integrar: Los datos han sido lógicamente organizados para reducir la redundancia de datos y
facilitar el acceso a ellos.
▪ Compartir: Donde todos los usuarios calificados tienen acceso a los mismos datos para usarlos
en diferentes actividades.
4
▪ Se tiene un control centralizado de las operaciones de acceso, ingreso, modificación,
eliminación y recuperación de datos, a través de un software específico denominado SGBD -
Sistema Gestor de Base de Datos (en inglés DBMS: Data Base Management System).
Los SGBD son programas que en conjunto con diversas herramientas permiten crear y administrar
las bases de datos, permitiendo dar integridad, confidencialidad y seguridad a los datos. Por lo tanto,
deben permitir definir, construir y manipular una o más bases de datos. Además, permiten el
almacenamiento, modificación y extracción de la información en una base de datos.
Uno de sus principales usos es que los usuarios puedan acceder a la información usando
herramientas específicas de consulta y creación de reportes. También proporcionan métodos para
mantener la integridad de los datos, administración de los permisos de accesos de usuarios a los
datos y para recuperar la información si el sistema se corrompe.
En esta asignatura los contenidos están asociados a la creación de bases de datos relacionales. Entre
los diferentes SGBD ofrecidos por el mercado, para este tipo de base de datos, se pueden encontrar:
▪ ORACLE.
▪ MySQL
5
▪ PostgreSQL.
▪ MariaDB.
▪ SQLite.
▪ IBM DB2.
▪ SYBASE.
▪ Visual FoxPro.
6
▪ Microsoft Access.
7
¿Qué DESVENTAJAS se observan en la implementación de una Base de Datos?
▪ Personal especializado: Generalmente se necesita contratar o capacitar a personas para
convertir sistemas existentes, desarrollar y estimar nuevos estándares de programación,
diseñar bases de datos y administrarlas.
▪ Necesidad de respaldos: Al tener mínima redundancia se requiere contar con respaldos
independientes que ayuden a recuperar archivos dañados. Los SGBD generalmente proveen
de herramientas que permiten respaldar y recuperar archivos.
▪ Problemas al compartir datos: El acceso concurrente a los datos puede causar datos no
consistentes o bloqueo de datos. Los SGBD deben ser diseñados para prevenir o detectar
tales interferencias, de una forma que sea transparente para el usuario.
▪ Conflicto organizacional: El mantener los datos en una base de datos para ser compartidos,
requiere de un consenso en la definición y propiedad de los datos como también en la
responsabilidad por la exactitud de ellos.
¿Qué es la abstracción de datos?
Abstracción de los datos.
Una de las principales finalidades de los SGBD es ofrecer a los usuarios una visión abstracta de los
datos. Es decir, el sistema oculta ciertos detalles del modo en que almacena y mantiene los datos.
Como definición general, la abstracción de algo posee dos cualidades: suprime los detalles
irrelevantes y busca para encontrar la esencia de ese algo.
Los datos representan una abstracción de la realidad ya que algunas características y propiedades
de los objetos reales son ignoradas, porque son irrelevantes a un problema en particular. Depende
de la naturaleza del problema para seleccionar el conjunto de datos necesarios para resolverlo.
La abstracción de datos es una técnica que permite diseñar estructuras de datos y consiste
básicamente en representar bajo cierto formato las características esenciales de esta estructura.
Basados en la definición anterior, se tomará a una persona como ejemplo y ver cómo esta persona
se abstrae en dos situaciones:
Situación 1:
Un médico ve a la persona como paciente. El médico está interesado en el nombre, altura, peso,
edad, grupo sanguíneo, enfermedades anteriores o existentes de la persona, etc.
8
Situación 2:
Un empleador ve a la persona como empleado. El empleador está interesado en el nombre, la edad,
la salud, el grado de estudio, trabajo que desempeña, experiencia de una persona, etc.
En el ejemplo, tanto el empleador como el médico no están interesados en todas las características
de una persona, por ejemplo, no les interesa el color de la ropa de la persona, los familiares de la
persona, qué come, etc. Ambos se centran en lo que para cada uno de ellos es importante de la
persona. Aun cuando no son las mismas características importantes que ambos ven para la persona,
algunos elementos son comunes para el médico y el empleador.
Entonces, la abstracción es el proceso de reconocer y centrarse en las características importantes
de una situación u objeto y dejar las características no deseados de esa situación u objeto. Una
abstracción, por lo tanto, se centra en las características esenciales de un objeto o evento que lo
distinguen de cualquier otro según la perspectiva del observador.
9
Modelos de datos.
Un modelo de datos se define como una descripción abstracta de los datos acerca de entidades y
asociaciones existentes entre ellas. Son el instrumento principal para ofrecer la abstracción de la
realidad.
Para que el sistema sea útil debe recuperar los datos eficientemente. La necesidad de eficiencia ha
llevado a los diseñadores a usar estructuras de datos complejas para la representación de los datos
en la base de datos. Dado que muchos de los usuarios de sistemas de bases de datos no tienen
formación en informática, los desarrolladores ocultan esa complejidad a los usuarios mediante
varios niveles de abstracción para simplificar la interacción de los usuarios con el sistema.
En esta asignatura se usa una representación que propone 3 niveles de abstracción, la cual se
denomina “Arquitectura de Tres Niveles” para el desarrollo de bases de datos y fue aprobado en
1975 por la ANSI-SPARC (American National Standard Institute - Standards Planning and
Requirements Committee) como ayuda para conseguir total independencia entre los datos y
aplicaciones. Los niveles se detallan a continuación:
10
1. Primer Nivel: También denominado Nivel Externo o de Vistas. Es el nivel más elevado de
abstracción solo describe parte de la base de datos. Es el más cercano al usuario final y permite
describir esquemas o vistas de usuario (capa de presentación) de los datos que le interesa a un
grupo de usuarios y a su vez oculta el resto de los datos.
En el siguiente ejemplo, se puede observar un sistema de factura con un formulario o vista de
usuario donde se ingresan los datos para su posterior emisión.
2. Segundo Nivel: También denominado Nivel Conceptual o Lógico. Este nivel describe qué
datos se almacenan en la base de datos y que relaciones existen entre esos datos.
En este nivel la representación es inherente a la tecnología que se vaya a implementar ya
que es un modelo lógico. Para hacer estas tareas de forma más eficiente es que se utilizan
las herramientas CASE (Computer Aided Software Engineering), que son aplicaciones
informáticas que apoyan todas las tareas del ciclo de vida de desarrollo de software.
En esta asignatura será ocupada la aplicación Oracle SQL Developer Data Modeler para
construir el modelo conceptual o Entidad/Relación.
Entidades: Son los objetos, personas o servicios que están involucrados en el negocio.
11
3. Tercer Nivel: También denominado Nivel Interno o Físico. Es el nivel más bajo de abstracción
describe cómo se almacenan realmente los datos. En el nivel físico se describen en detalle las
estructuras de datos complejas de bajo nivel.
A continuación, se muestran a manera de ejemplo los datos de los empleados de una empresa:
El identificador o número de empleado, nombre, cargo, identificador o número del jefe, fecha
de contratación, sueldo, comisión y número de departamento al que pertenece.
12
Modelamiento de datos.
¿Por qué Modelar?
Los modelos facilitan la comunicación entre el diseñador de base de datos y los usuarios finales para
que ambas partes puedan validar y confirmar cuáles son los requisitos de información.
A menudo los usuarios finales no saben cuáles son los requisitos hasta que se puedan ver en el
papel. Los modelos proporcionan a los usuarios finales una visión de algo tangible y que se puede
utilizar como documentación en el proyecto.
Conseguir que los usuarios participen desde el principio en el proyecto y en la validación del modelo
incrementará la calidad y la adopción del sistema después de que se construya.
Los modelos son fáciles de cambiar, ya que son sólo una imagen del sistema que se desea
desarrollar. Si las discrepancias de comunicación y las ideas pueden ser totalmente definidos desde
el principio, la posibilidad de error potencial más adelante en el proyecto puede ser minimizado.
13
3. Diseño Físico: Comienza con el esquema Lógico y da como resultado un esquema o modelo
Físico que define las especificaciones físicas de implementación para el SGBD seleccionado.
14
1. Modelo Conceptual de Datos o Entidad/Relación: Su objetivo es aclarar y satisfacer las necesidades
del negocio de los usuarios y validar los requisitos de información. Es independiente del hardware
o software que se utilizará para la aplicación.
El diagrama que se utiliza para construir el modelo conceptual de datos se llama diagrama o Modelo
Entidad/Relación (MER) y sus componentes básicos son entidades, atributos y relaciones. Este
modelo debe pasar por un proceso de normalización donde se aplican una serie de normas para
evitar la redundancia e inconsistencia de los datos, y proteger la integridad de los datos obteniendo
un modelo conceptual canónico o normalizado.
2. Modelo Relacional: El propósito de este modelo es describir los objetos que deben ser creado
cuando la base de datos sea generada. Los componentes del modelo relacional son objetos tales
como tablas, relacionales, columnas y claves primarias y foráneas.
15
3. Modelo Físico: Describe una base de datos en términos de objetos (tablas, vistas, etc.) y se basa en
el modelo relacional. Es generada la secuencia de comandos SQL (script SQL) necesarias para crear
la base de datos. El modelo físico se basa en el SGBD elegido para crear la base de datos.
Script SQL.
16
Un modelo conceptual de datos identifica las relaciones de más alto nivel entre las diferentes
entidades. En este proceso es importante abstraer los detalles sin importancia y representar tan
sólo aquella información que sea relevante y que sirvan de base para las demás etapas del diseño.
En este punto no interesa el cómo ni donde se va a implementar la base de datos. En esta etapa
interesa recoger la mayor cantidad de información posible, la cuál puede ser obtenida a través de
dos vías de información:
▪ Narrativas del usuario.
▪ Vistas de Usuarios.
17
Las vistas y narrativas de usuarios, son los elementos que entrega el cliente para especificar las
principales necesidades que requiere resolver, estos elementos permitirán al equipo desarrollador
conocer y comprender en primera instancia la lógica y necesidades del negocio.
Como se ha indicado el modelo conceptual más utilizado para el diseño conceptual de bases de
datos es el Modelo Entidad/Relación. A continuación, se muestran ejemplos de modelos
conceptuales:
18
En su forma más simple implica identificar los asuntos de importancia dentro de una organización y
que en este modelo se denomina ENTIDADES, las propiedades de esos asuntos que corresponden a
los ATRIBUTOS y cómo se relacionan entre sí lo que se conoce como RELACIONES.
El MER es independiente del SGBD, por lo cual es utilizado con propósito de análisis y diseño dentro
del desarrollo de sistemas de información.
La creación de un modelo Entidad/Relación proporciona:
▪ Un formato claro y preciso para las necesidades de información de una organización.
▪ Una imagen que los usuarios pueden fácilmente comprender.
▪ Una forma de desarrollar y refinar fácilmente el modelo.
▪ Una imagen clara del alcance del proyecto.
▪ Un modelo independiente de cualquier almacenamiento de datos y método de acceso que
permita tomar decisiones objetivas de cómo se implementará y la compatibilidad con sistemas
antiguos.
Los conceptos básicos de un MER son:
▪ ENTIDAD: Representa un objeto de la realidad, de la que se necesita mantener y conocer
información.
• ATRIBUTO: Representa una propiedad básica que caracteriza a una entidad.
• RELACIÓN: Representa una conexión entre una o más entidades.
Originalmente solo incluía los conceptos básicos mencionados anteriormente. Más tarde se
añadieron otros conceptos como los atributos compuestos y las jerarquías de generalización, en
lo que se ha denominado MERE - Modelo Entidad/Relación Extendido.
19
Para representar el modelo conceptual existen distintos tipos de simbologías (gráficas y
narrativas). La más popular es la simbología propuesta por Peter Chen en su modelo Entidad
Relación (E/R) introducido en el año 1976 y en el último tiempo la que utiliza el CASE*METHOD
adoptada por Oracle, que es la que se utilizará en esta asignatura.
Atributos
Entidad
Relación
Identificando entidades.
Las entidades contienen hechos que la empresa debe conocer y recordar. Es cualquier objeto, real
o abstracto, que existe en un contexto determinado o puede llegar a existir y del cual se desea
guardar información.
Se refieren a los conceptos, personas, objetos o cosas que son importantes para el negocio y sobre
de las cuales se deben guardar sus datos.
20
A continuación, se muestran algunos ejemplos de entidades.
Persona: Sujeto que interviene o efectúa evento determinado en el negocio.
Evento: Son acciones efectuadas por las personas y que afectan a los objetos.
21
Por lo general las entidades corresponden a los sustantivos más importantes encontrados en la
narrativa del negocio y por tratarse de un concepto o abstracción se utiliza un sustantivo en singular
para nombrar la entidad. Se pueden clasificar en uno de los siguientes tipos:
TIPO DESCRIPCIÓN EJEMPLO
ENTIDAD PRINCIPAL Es independiente y no depende de la CLIENTE, PROFESOR,
(ENTIDAD FUERTE) existencia de otra entidad. EMPLEADO, ALUMNO,
DEPARTAMENTO,
ASIGNATURA.
ENTIDAD Depende de la existencia de una La entidad NOTAS depende de
CARACTERISTICA entidad fuerte. un ALUMNO.
(ENTIDAD DÉBIL) La entidad CARGA_FAMILIAR
depende del EMPLEADO.
ENTIDAD Depende de la existencia de dos o Asignaturas que un alumno
INTERSECCIÓN más entidades. cursa y que depende de la
ASIGNATURA y el ALUMNO.
El detalle de los productos
vendidos en una factura que
depende de la FACTURA y los
PORDUCTOS.
Para identificar y modelar las entidades a partir de las entrevistas o narrativas de usuarios, se
recomiendan los siguientes pasos:
▪ Examinar los sustantivos presentes en la descripción narrativa de los requerimientos de
información.
▪ ¿Son cosas de importancia para considerarlas como entidades?
▪ ¿Hay información de interés que se deba almacenar sobre esa entidad?
▪ ¿Es identificable particularmente cada instancia de esa entidad?
▪ Elaborar una descripción de cada entidad.
▪ Dibuje la entidad y coloque sus atributos.
22
Para identificar y modelar las entidades a través de las vistas de usuarios considerar lo siguiente:
▪ Una vista de usuario es un subconjunto de datos utilizados por un cierto usuario para tomar una
decisión o realizar una acción.
▪ Corresponde a fuentes de información como documentos, formularios, reportes, carpetas, archivos,
pantallas, etc.
▪ Las vistas se obtienen revisando las tareas realizadas por los usuarios y los datos requeridos para
llevarlas a cabo.
▪ Cada elemento de dato o atributo que aparece en una vista debe ser definido y descrito en detalle.
A continuación, se muestran imágenes con ejemplos de vistas de usuario:
23
24
Las convenciones de notaciones para una entidad en CASE*METHOD de Oracle, que se utilizará en
esta asignatura, son:
▪ Para dibujar las entidades en el MER se utilizan cajas con bordes redondeados de cualquier
tamaño.
▪ Cada entidad lleva un nombre único.
▪ El nombre se debe encontrar en mayúscula y singular.
▪ Se sugiere no usar tildes o caracteres especiales (como la letra Ñ) en los nombres de las
entidades. En el caso que se requiera colocar un nombre que tenga más de una palabra se sugiere
no usar espacios colocando todo en una sola palabra o separarlas por un guion bajo ( _ ).
Ejemplos de entidades:
Identificando atributos.
Los atributos son información o características que necesitan ser conocidas y mantenidas de una
entidad. Son una propiedad descriptiva o valor asociado a una entidad que sirve para cualificar,
identificar, clasificar o expresar el estado de la entidad.
25
Cada atributo tiene un conjunto de valores asociados denominado dominio. El dominio define todos
los valores posibles que puede tomar un atributo. En la práctica, la definición del dominio de un
atributo requiere como mínimo: el tipo de dato y el largo o tamaño.
Un atributo o conjunto de atributos que identifican particularmente a cada instancia se llama
Identificador Único (UID o IDU). Por ejemplo, para una persona en Chile se puede definir el rut como
identificador único, porque es un valor único para cada persona.
Los nombres de los atributos deben ser específicos y completos. Por ejemplo: cantidad_comprada
y fecha_envio en lugar de cantidad y fecha.
Ejemplo de atributos de la entidad LIBRO:
Atributo Obligatorio
Atributo Opcional
26
▪ Atributo Simple: Atributo que tiene un solo componente, que no se puede dividir en partes más
pequeñas que tengan un significado propio.
▪ Atributo Compuesto: Atributo con varios componentes, cada uno con un significado por sí
mismo. Un grupo de atributos se representa mediante un atributo compuesto cuando tienen
afinidad en cuanto a su significado o a su uso. Por ejemplo, el atributo dirección está compuesto
por calle, número, comuna y ciudad.
Los atributos también pueden clasificarse en monovalentes o polivalentes:
▪ Atributo monovalorado o monovaluado: Atributo que tiene un solo valor para cada ocurrencia
de la entidad o relación a la que pertenece. Un ejemplo de este tipo de atributos es el rut.
▪ Atributo multivalorado o multivaluado: Atributo que tiene varios valores para cada ocurrencia
de la entidad o relación a la que pertenece. Por ejemplo, varios teléfonos para un mismo cliente,
los títulos que posea una persona, las notas de un alumno.
Por último, los atributos pueden ser derivados. Un atributo derivado es aquel que representa un
valor que se puede obtener a partir del valor de uno o varios atributos, que no necesariamente
deben pertenecer a la misma entidad o relación. Un ejemplo clásico de atributo derivado es la edad.
Si se ha almacenado en algún atributo la fecha de nacimiento, la edad es un valor calculable a partir
de dicha fecha.
Para representar los atributos de las entidades se deben considerar las siguientes convenciones:
▪ Deben ser escritos en singular y en minúsculas dentro de la entidad.
▪ Se debe descomponer un atributo hasta aquella componente mínima con significado propio. Por
ejemplo, el nombre de una persona debe ser descompuesto en nombre y apellidos.
▪ Generalmente los atributos que contengan fecha no se descomponen. No obstante, el nivel de
descomposición dependerá de las necesidades de la organización.
▪ Se debe verificar que cada atributo tenga un solo valor para cada instancia de la entidad. Un
atributo con múltiples valores o grupos que se repiten no son atributos válidos para este modelo
y es necesario representarlos como una entidad.
27
El siguiente ejemplo visualiza el caso de un atributo multivalorado o multivaluado. En la entidad
ESTUDIANTE el atributo notas es multivalorado y es necesario crear una nueva entidad que
contenga las notas del estudiante y establecer una relación entre la nueva entidad creada y la
entidad ESTUDIANTE.
28
El símbolo que se encuentra al costado de la entidad EMPLEADO representa que el
departamento está asociado a uno o muchos empleados y se le llama pata de gallo por su similitud
con el pie de dicho animal.
Cada dirección de la relación tiene ciertas características que se pueden especificar en el MER:
▪ Nombre relación: Es un verbo. En el modelo se muestra como una etiqueta que aparece cerca
de la entidad a la que está asignado. Es necesario asegurarse que todos los nombres de relación
estén en minúsculas. Por ejemplo: "asignado a" o "responsable".
▪ Cardinalidad Mínima (u opcionalidad): Puede ser opcional (cero) u obligatoria (al menos uno).
La línea discontinua de la relación indica que la relación es opcional y la línea continua de la
relación indica que la relación es obligatoria.
Cuando se lee la regla del negocio o relación se utilizan las siguientes palabras para la
cardinalidad mínima:
Opcional: Utilizar "puede ser" o "puede".
Obligatorio: Usar "debe ser" o "debe".
▪ Cardinalidad Máxima (o grado): Puede ser uno o muchos. Cuando se lee la regla del negocio o
relación se utilizan las siguientes palabras para la cardinalidad máxima:
Línea: Usar "uno y sólo uno”.
Pata de gallo: Usar "uno o muchos".
Con el fin de establecer las reglas de negocio para cada relación, primero se lee una relación en una
dirección y luego se lee la relación en la otra dirección. En los siguientes ejemplos las relaciones se
leerían de la siguiente forma:
29
▪ Una asignatura puede ser tomada por uno o muchos estudiantes y un estudiante puede estar
inscrito en una o más asignaturas.
▪ Un cliente puede hacer uno o muchos pedidos y un pedido es realizado por un cliente.
La cardinalidad máxima con la que una entidad participa en una relación corresponde al número
mínimo y máximo de ocurrencias en las que puede tomar parte cada entidad. Se pueden distinguir
los siguientes grados de cardinalidad máxima:
Relación Uno a Muchos (1:N o 1:M) o Muchos a Uno (N:1 o M:1).
Se caracteriza por tener cardinalidad de uno o más en una dirección y una cardinalidad de uno y
sólo uno en la otra dirección. Este tipo de relación es la más frecuente.
30
Por ejemplo:
▪ Un cliente puede hacer uno o muchos pedidos y un pedido es realizado por uno y sólo un cliente.
▪ Un empleado efectúa uno y sólo un trabajo y un trabajo es realizado por uno o muchos
empleados.
Por ejemplo:
▪ Una asignatura puede ser tomada por uno o muchos estudiantes y un estudiante puede estar
inscrito en una o más asignaturas.
▪ Un actor participa en una o muchas películas y en una película actúan uno o muchos actores
31
Relación Uno a Uno (1:1).
Se caracteriza porque tienen una cardinalidad de uno y sólo uno en ambas direcciones. Este tipo de
relaciones son las menos comunes y se debe tener cuidado, ya que puede que este tipo de relación
entre entidades sea realmente una misma entidad y no entidades diferentes.
Por ejemplo:
▪ Un operario es encargado de una y sólo una maquinaria, y una maquinaria es manejada por uno
y sólo un operario.
▪ Un computador contiene una y sólo una placa madre, y una placa madre es contenida por un y
sólo un computador.
32
Grado de las relaciones.
La cantidad de entidades en una relación determina el grado de la relación. Se pueden distinguir las
siguientes asociaciones:
▪ Asociación recursiva o unaria: Es una relación entre ocurrencias de una misma entidad. Pueden
ser 1:1, 1:N o M:N.
▪ Asociación Binaria: Es una relación entre ocurrencias de dos entidades. Pueden ser 1:1, 1:N o
M:N.
33
¿Cómo asignar identificadores únicos a las entidades?
El identificador Único (UID o IDU) de una entidad es un atributo o grupo de atributos especial(es)
que identifica(n) de forma única una ocurrencia o instancia particular en la entidad. Un atributo de
identificador único se designa con el símbolo # de color azul. Cada atributo de un identificador único
es obligatorio.
A continuación, se muestran ejemplos de identificadores únicos:
▪ Para obtener el nombre de un departamento en particular basta solo con saber el valor del
identificador (id_depto). En este caso solo se usa un atributo para identificar los departamentos
de manera única.
▪ Si los números de ticket se repiten en forma diaria, para saber la información de un ticket en
particular se debe conocer el número del ticket y la fecha de la obra. En este caso se usan
múltiples atributos para identificar los tickets de manera única.
34
Las entidades fuertes poseen atributos propios que permitan identificar en forma única una
instancia de la entidad. En cambio, las entidades débiles pueden o no tener suficientes atributos
que permitan identificar en forma única una instancia de la entidad, en el segundo caso necesitarán
de una entidad fuerte para definir su identificador único.
Una entidad débil depende de una entidad fuerte de dos formas:
▪ Dependencia en existencia: Una entidad débil depende en existencia de una entidad fuerte,
pero no necesariamente debe depender de la identificación única.
En la siguiente imagen la entidad CUENTA_BANCARIA es débil, ya que depende en existencia de
CLIENTE, pero no depende del identificador único nro_cuenta.
▪ Dependencia en identificación: Una entidad débil depende en existencia de una entidad fuerte,
pero también puede depender de la identificación única de la entidad fuerte.
Por ejemplo, la entidad COPIA es débil porque depende en existencia de la entidad PELICULA y
también depende en identificación, ya que con el atributo num_copia no es suficiente para
identificar en forma única una instancia de la entidad COPIA y se debe complementar con el
identificador único de la película.
35
La entidad NOTA es débil, ya que depende en identificación y existencia de ALUMNO y
ASIGNATURA. Se requiere de un ALUMNO y ASIGNATURA para hacer referencia de un conjunto
de NOTAS. Ambas relaciones están incluidas en el identificador único de NOTA.
Una entidad puede tener más de un atributo que puede ser definido como identificador único.
En el siguiente ejemplo, existen dos atributos candidatos para ser definidos como
identificadores únicos candidatos para la entidad EMPLEADO el rut_empleado y el id_empleado
que permiten identificar en forma única una instancia de la entidad.
36
Cuando esta situación ocurre, se debe seleccionar un identificador único candidato para ser el único
identificador primario y los otros atributos para ser identificadores únicos secundarios. No existe
una convención en el MER para graficar los identificadores únicos secundarios.
¿Cómo usar Oracle SQL Developer Data Modeler para crear un MER?
37
En la actualidad existen diversas herramientas que permiten el desarrollo del modelado de una base
de datos, en el mercado de software se pueden encontrar herramientas como:
▪ DIA.
▪ ORACLE Developer Data Modeler.
▪ Enterprise Architect.
▪ MySql Workbench.
▪ Management Studio de Microsoft.
Todas estas herramientas permiten elaborar Modelos Entidad/Relación. En esta asignatura se
utilizará la herramienta ORACLE SQL Developer Data Modeler.
Oracle SQL Developer Data Modeler es una herramienta gráfica gratuita que mejora la
productividad y simplifica las tareas de modelado de datos. Es fácil de instalar y tiene las siguientes
características:
▪ Puede trabajar con diversas bases de datos, no está restringido solo a Oracle.
▪ Permite realizar ingeniería inversa.
▪ Dispone de los siguientes niveles de diseño lógico, relacional y físico, con herramientas de
generación automática en ambos sentidos.
▪ Herramienta de diseño visual.
▪ Múltiples opciones en la generación del DDL.
Para descargar el software debe acceder al siguiente link:
https://www.oracle.com/tools/downloads/sql-data-modeler-downloads.html
Previamente debe crear una cuenta en Oracle con su cuenta de correo DUOC. Revisar documento:
¿Cómo crear una cuenta en Oracle?
38
Al descargar el archivo se debe descomprimir y se creará una carpeta con nombre datamodeler.
Para iniciar el programa se debe hacer doble clic en el archivo datamodeler.exe presente en la
carpeta.
Al iniciar se desplegará una ventana donde se pueden distinguir las siguientes secciones:
39
Se recomienda guardar el archivo del modelo al principio e ir guardando cada cierto tiempo para
evitar la pérdida del avance en caso de algún inconveniente. Se debe seleccionar la opción Archivo
de la barra de herramientas y luego en Guardar o Guardar como…, entonces será desplegada la
siguiente ventana:
Se sugiere crear una carpeta para guardar el modelo, ya que se genera un archivo con extensión
.dmd y una carpeta que contiene más archivos. Al colocar el Nombre del Archivo elimine el símbolo
/ que aparece para evitar errores. Al abrir la carpeta donde fue guardado el modelo se observa lo
siguiente:
40
IMPORTANTE: Para enviar el modelo debe comprimir el archivo con extensión .dmd y la carpeta
creada por el programa. Si falta uno de estos elementos no es posible abrir el modelo.
Para crear el modelo conceptual o Entidad/Relación se debe seleccionar la pestaña llamada Logical…
Si por algún motivo no se ve la pestaña, se debe ir al explorador y hacer clic derecho sobre la opción
Modelo Lógico y en el menú contextual desplegado seleccionar la opción Mostrar.
Al seleccionar la pestaña Logical… se presenta un lienzo vacío que permite dibujar el modelo
conceptual.
41
Para comenzar con la creación del modelo se deben crear las entidades. Para crear una entidad se
debe presionar el ícono bajo de la barra de herramientas y luego se dibuja con el mouse en
sobre el lienzo.
42
IMPORTANTE: Una vez creada la entidad, si presiona sobre el lienzo se creará una nueva entidad. Si
El siguiente paso es agregar los atributos a las entidades, para lo cual se debe hacer doble clic sobre
la entidad. En la ventana desplegada seleccionar la opción Atributos del listado de la izquierda. Cabe
señalar que también se pueden agregar los atributos cuando es creada la entidad.
Para crear el atributo se debe presionar el signo para asignar un nombre, indicar el tipo de datos
(lógico), definir si es identificador único (UID Primario) o si es un atributo obligatorio.
43
Para definir el tipo de dato se debe seleccionar la opción Lógico y en el listado del Tipo de Origen
serán desplegados los tipos de datos disponibles.
44
Tipo de dato en ORACLE Descripción ¿Qué seleccionar en
Data Modeler?
VARCHAR2(tamaño) Tipo de dato de caracteres de longitud variable. Se debe especificar su tamaño. Tamaño VARCHAR
mínimo: 1, tamaño máximo: 4000.
CHAR[(tamaño)] Tipo de dato de caracteres de longitud fija. Su tamaño mínimo es 1 y el máximo es 2000. CHAR
NUMBER(precisión,escala) Tipo de dato numérico de longitud variable. La precisión indica el largo total y la escala los NUMERIC
decimales. Si no se indica la escala, el número será un valor entero.
El rango para la precisión va desde 1 a 38. El rango para la escala va desde -84 to 127.
TIMESTAMP [(precisión)] Es una extensión de DATE, almacena año, mes, día, hora, minuto, segundo y fracción de TIMESTAMP WITH
segundo. La precisión indica el número de dígitos para la fracción de segundos. El rango es de TIME ZONE
0 a 9 y el valor por defecto es 6.
45
Para definir que un atributo es obligatorio se debe seleccionar la opción Obligatorio. Si esta opción
no es seleccionada se entiende que el atributo es opcional.
Recuerde que los atributos obligatorios son acompañados de un * de color rojo y los atributos
opcionales se diferencian por estar acompañados de una o de color rojo.
Finalmente, para definir el identificador único de la entidad solo basta con seleccionar la opción UID
Primario.
46
Una vez creadas las entidades se debe continuar con las relaciones entre ellas. Los iconos en forma
de flecha de color verde permiten crear las relaciones: M:N, 1:N, Nueva Identificación de la relación
1:N y 1:1.
47
Para crear la relación se debe seleccionar el icono del tipo de relación que desea crear y luego
pinchar la entidad de origen y la entidad destino de la relación.
En caso de querer modificar las propiedades de una relación se debe hacer doble clic en la relación
y será desplegada la siguiente ventana:
Acá es posible revisar la cardinalidad de las relaciones y colocar el nombre de las relaciones en origen
y destino.
48
IMPORTANTE: Para que aparezcan los nombres de las relaciones se deben escribir ambas (Nombre
en Origen y Nombre en Destino) y luego activar las etiquetas presionando el botón derecho del
mouse sobre el lienzo (parte blanca) y seleccionar la opción Mostrar -> Etiquetas del menú
contextual.
49
50