Skip to content

Modelo Relacional

Entidad

Objeto exclusivo único en el mundo real que se está controlando con características comunes que cumplen una función especifica.

Las entidades pueden ser tangibles o intangibles, el cual hace referencia a una persona, organización, tipo de objeto o concepto sobre los que se almacena información. Describe el tipo de la información que se está controlando. Normalmente un tipo de entidad corresponde a una o varias tablas relacionadas en la base de datos.

Atributo

Característica o rasgo de un tipo de entidad que describe la entidad, por ejemplo, el tipo de entidad Person (Persona) tiene los atributos (nombre, apellido, dirección, correo, fecha de nacimiento, entre otros). También se conoce como las columnas de una tabla.

Atributo Simple

No están dividido en subpartes. Ej. nombre, apellido, dirección

Atributo Compuesto

Están dividido en subpartes. Ej. primerApellido, segundo_apellido

Atributo Monovalorados

Atributos con un único valor. Ej. fecha_nacimiento

Atributo Multivalorado

Tiene un conjunto de valores para una entidad. Ej. numero_telefonos, puede tener cero, uno, dos, tres, entre otros.

Atributo Derivados

Su valor se puede obtener de otros atributos. Ej. edad, se puede obtener a partir de la fecha de nacimiento. Su valor no se almacena, sino que se calcula cuando es necesario.

Dominio

Es el conjunto de valores permitido para un atributo.

Relaciones

Las entidades por sí solas no describen la realidad de un sistema de información. No basta con identificar objetos; además hay que definir las asociaciones existentes entre éstos. Dichas asociaciones se denominan relaciones.

Cardinalidad

Esta definida como la cantidad de elementos en términos de proporción que participan en la relación entre dos o más entidades. Esta puede ser entre elementos únicos (unitarios) o múltiples.

Generalmente se utiliza la denominación "1" para elementos unitarios, y "N" para varios elementos participantes.

Existen tres tipos posibles:

Una a una (1:1). A cada instancia u ocurrencia de una entidad le corresponde no más de una ocurrencia de la otra.

Una a muchas (1:n). A cada ocurrencia de la primera entidad le corresponden una o varias ocurrencias de la segunda.

Muchas a muchas (m:n). A cada ocurrencia de la primera entidad le pueden corresponder varias ocurrencias de la segunda y viceversa.

Caso de Ejemplo con Herramienta Case Power Designer V. 16.7

File >> New Model

Seleccionamos Logical Diagram

Presionamos el botón OK

En el cuadro de herramientas de la parte derecha presionamos clic encima de la herramienta que representa la entidad (Entity).

Luego presionar en la parte central clic para cada entidad que quiera crear.

Acto seguido, presionar clic con el botón derecho para desactivar la herramienta que se está creando. para personalizar cada entidad presionando doble clic sobre cada una de ellas.

Primero en General

Segundo en Attributes, se agregan los atributos de la entidad Persona y luego Aceptar.

Repetimos los pasos para cada una de las entidades. que para este caso sería la entidad empleado.

En General el nombre de la Entidad

En Attributes se definen los atributos de Empleado y clic en el botón Aceptar.

Quedando de la siguiente manera:

Una vez realizado las entidades y sus respectivos atributos, procedemos a crear las relaciones entre dichas entidades.

Para ello presionamos clic en la cuadro de herramientas de la parte derecha en One-Many Relationship y presionamos clic sostenido de una tabla a otra, sin importar el orden, es decir, de izquierda a derecha o de derecha a izquierda.

En este caso lo haremos de izquierda a derecha, es decir de Persona a Empleado

Ahora personalizamos dicha relación, presionando doble clic encima de Relationshep_1

Se coloca en General el Nombre PersonaEmpleado, indicando que se establece una relación en este sentido. se puede colocar cualquier nombre, pero se recomienda colocarlo de esta manera para que sea entendible.

Luego en la pestaña Cardenalities se define el tipo de cardinalidad de la relación.

Las relaciones de cardinalidad pueden ser de:

1:1

1:N

Solo se realiza las flechas en rojo. Las flechas verdes es simplemente para observar los resultados que el sistema realiza.

Notese que en la Relación Persona to Empleado, seleccionamos 1,N , puesto 1 Persona contiene N es decir, muchos Empleados.

Y la Relación Empleado to Persona, seleccionamos 1,1 , puesto 1 Empleado es una Persona.

Si creásemos una nueva entidad llamada Turno, quedaría de la siguiente manera:

Definimos los atributos

Quedando el diseño lógico de la siguiente manera:

Luego hacemos la relación entre Empleado y Turno

Para ellos presionamos clic en el cueadro de herramientas en Many-Many Relationship. En esta relación cambia la herramienta porque observamos que en esta nueva asociacion es de muchos a muchos, puesto que un Empleado tiene muchos Turnos y un Turno tiene muchos Empleados.

Entonces presionamos clic en Many-Many Relationship

Luego, clic sostenido entre las entidades Emplado y Turno

Notese que se crea una nueva entidad producto de la relación de muchos a muchos.

Esta nueva entidad, se puede personal y cambiar el nombre el cual le colocaremos EmpleadoTurno

Caso de Ejemplo con Herramienta WorkBench

Descarga

https://dev.mysql.com/downloads/workbench/

Con este control puedo crear varias entidades o tablas en un mismo modulo o area.

Ahora, relacionamos las entidades clientes y teléfonos.

Tenemos que la relación entre clientes y teléfonos es de 0:N, dado que un cliente puede tener cero o muchos teléfonos y un teléfono pertenece pertenece a un cliente.

Existen dos formas de relaciones de de 1:N, en WorkBench, uno con lineas continuas llamadas relaciones identificatorias y la otra es con lineas discontinuas llamadas no identificatorias.

Utilizaremos las lineas discontinuas, de esta manera la llave foránea puede aceptar valores nulos, en caso que un cliente puede no tener teléfonos.

Luego, las relaciones se hacen de forma contraria la de muchos programas, una vez se selecciona el botón de 1:N lineas discontinua, se presiona primero en la tabla de muchos (teléfonos) y luego en la tabla que corresponde al uno (clientes). Obteniendo el siguiente resultado.

Se aprecia que en la tabla teléfonos, se agregó la llave foránea clientes_id .

Ahora procedemos a crear las entidades ventas y productos.

Acto seguido procedemos a crear las relaciones entre ellas.

Podemos apreciar que existe una relación entre clientes y ventas, dado que un cliente le pueden realizar una o muchas ventas y una venta pertenece a un único cliente.

También podemos relacionar ventas y productos, dado que una venta contiene muchos productos y un producto es vendido a muchos clientes, por lo cual la relación es de muchos a muchos.

En las herramientas se selecciona el botón correspondiente a la relación n:m

Y luego se presiona clic en una tabla y luego en la otra sin importar el orden.

Por ultimo hacemos la relación entre productos y proveedores. En este ejemplo consideramos que un producto puede ser suministrado por muchos proveedores y un proveedor suministra muchos productos, es decir de muchos a muchos.

Tener en cuenta que esto va dependiendo de las condiciones del caso, dado que se pueda presentar en alguna tienda donde los productos son suministrado por un único proveedor y un proveedor suministra muchos productos, teniendo como resultado de uno a muchos. en este caso no consideramos esta opción.

Primero creamos los atributos de proveedores.

y luego su respectiva relación con productos.

Hasta este punto solo hemos creado el diagrama, es decir el modelo relacional. Ahora procedemos a crear la base de datos física en el motor de MySQl.

Para ello, hacemos lo siguiente:

Introducimos la clave del motor de BD.

Aparece el codigo generado del lenguaje SQL, el cual podemos revisar, luego presionar Next.

Nuevamente ingresar clave del motor de MySQL.

Podemos observar cada una de las tablas y sus respectivos campos en Columns.