lunes, 23 de marzo de 2015

¿Qué es el modelo entidad-relación?

Como ya he comentado este modelo es solo y exclusivamente un método del que disponemos para diseñar estos esquemas que posteriormente debemos de implementar en un gestor de BBDD (bases de datos). Este modelo se representa a través de diagramas y está formado por varios elementos.
Este modelo habitualmente, además de disponer de un diagrama que ayuda a entender los datos y como se relacionan entre ellos, debe de ser completado con un pequeño resumen con la lista de los atributos y las relaciones de cada elemento.
Elementos del modelo entidad-relación
Entidad
Las entidades representan cosas u objetos (ya sean reales o abstractos), que se diferencian claramente entre sí.
Para poder seguir un ejemplo durante el artículo añadiré ejemplos sobre un taller mecánico, donde se podría crear las siguientes entidades:
·         Coches (objeto físico): contiene la información de cada taller.
·         Empleado (objeto físico): información de los trabajadores.
·         Cargo del empleado (cosa abstracta): información de la función del empleado.
Estas entidades se representan en un diagrama con unos rectángulos, como los siguientes.

Atributos
Los atributos definen o identifican las características de entidad (es el contenido de esta entidad). Cada entidad contiene distintos atributos, que dan información sobre esta entidad. Estos atributos pueden ser de distintos tipos (numéricos, texto, fecha…).
Siguiendo el ejemplo de antes podemos analizar los atributos de nuestra entidad “Coches“, que nos darán información sobre los coches de nuestro supuesto taller.
Unos posibles atributos serían los siguientes: número de chasis, matrícula, DNI del propietario, marca, modelo y muchos otros que complementen la información de cada coche.
Los atributos se representan como círculos que descienden de una entidad, y no es necesario representarlos todos, sino los más significativos, como a continuación.

En un modelo relacional (ya implementado en una base de datos) una ejemplo de tabla dentro de una BBDD podría ser el siguiente.
Número de chasis
Matrícula
DNI del propietario
5tfem5f10ax007210
4817 BFK
45338600L
6hsen2j98as001982
8810 CLM
02405068K
5rgsb7a19js001982
0019 GGL
40588860J
Este ejemplo es con tres atributos, pero un coche podría tener cientos (si fuese necesario) y seguirían la misma estructura de columnas, tras implementarlo en una BBDD.
Relación
Es un vínculo que nos permite definir una dependencia entre varias entidades, es decir, nos permite exigir que varias entidades compartan ciertos atributos de forma indispensable.
Por ejemplo, los empleados del taller (de la entidad “Empleados“) tienen un cargo (según la entidad “Cargo del empleado“). Es decir, un atributo de la entidad “Empleados“ especificará que cargo tiene en el taller, y tiene que ser idéntico al que ya existe en la entidad “Cargo del empleado“.
Las relaciones se muestran en los diagramas como rombos, que se unen a las entidades mediante líneas.

Yo, bajo mi punto de vista, entiendo mejor esto en una tabla (de una implementación en unaBBDD), por lo que voy a poner el ejemplo de como se representaría (resaltada la relación, que posteriormente veremos como se haría).
Empleados
Nombre
DNI
Cargo
Carlos Sánchez
45338600L
001
Pepe Sánchez
02405068K
002
Juan Sánchez
40588860J
002
Cargo del empleado
ID del cargo
Descripción
001
Jefe de taller
002
Mecánico

Relaciones de cardinalidad
Podemos encontrar distintos tipos de relaciones según como participen en ellas las entidades. Es decir, en el caso anterior cada empleado puede tener un cargo, pero un mismo cargo lo pueden compartir varios empleados.
Esto complementa a las representaciones de las relaciones, mediante un intervalo en cada extremo de la relación que especifica cuantos objetos o cosas (de cada entidad) pueden intervenir en esa relación.
Uno a uno: Una entidad se relaciona únicamente con otra y viceversa. Por ejemplo, si tuviésemos una entidad con distintos chasis y otra con matrículas deberíamos de determinar que cada chasis solo puede tener una matrícula (y cada matrícula un chasis, ni más en ningún caso).

Uno a varios o varios a uno: determina que un registro de una entidad puede estar relacionado con varios de otra entidad, pero en esta entidad existir solo una vez. Como ha sido en el caso anterior del trabajador del taller.

Varios a varios: determina que una entidad puede relacionarse con otra con ninguno o varios registros y viceversa. Por ejemplo, en el taller un coche puede ser reparado por varios mecánicos distintos y esos mecánicos pueden reparar varios coches distintos.

Los indicadores numéricos indican el primero el número mínimo de registros en una relación y posteriormente el máximo (si no hay límite se representa con una “n“).
Claves
Es el atributo de una entidad, al que le aplicamos una restricción que lo distingue de los demás registros (no permitiendo que el atributo específico se repita en la entidad) o le aplica un vínculo (exactamente como comentábamos en las relaciones). Estos son los distintos tipos:
Superclave: aplica una clave o restricción a varios atributos de la entidad, para así asegurarse que en su conjunto no se repitan varias veces y así no poder entrar en dudas al querer identificar un registro.
Clave primaria: identifica inequívocamente un solo atributo no permitiendo que se repita en la misma entidad. Como sería la matrícula o el número de chasis de un coche (no puede existir dos veces el mismo).

Clave externa o clave foránea: este campo tiene que estar estrictamente relacionado con la clave primaria de otra entidad, para así exigir que exista previamente ese clave. Anteriormente hemos hablado de ello cuando comentábamos que un empleado indispensablemente tiene que tener un cargo (que lo hemos representado numéricamente), por lo cual si intentásemos darle un cargo inexistente el gestor de bases de datos nos devolvería un error.

linkografia:
http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-datos-modelo-entidad-relacion

Obtener información sobre las reglas de validación

Una regla de validación limita o controla lo que los usuarios pueden escribir en un campo de tabla o un control (como un cuadro de texto) de un formulario. Microsoft Office Access 2007 permite validar los datos de diversas maneras y, a menudo, se usan varias de esas técnicas para definir una regla de validación. Las reglas de validación se pueden considerar como un conjunto de capas y se pueden usar algunas o todas esas capas para asegurar que los usuarios escriben correctamente los datos.

Tipos de datos    En general, los tipos de datos representan la primera capa de validación. Cuando se diseña una tabla de base de datos, se define un tipo de datos para cada campo de la tabla y ese tipo de datos restringe lo que los usuarios pueden escribir. Por ejemplo, los campos de tipo Fecha/Hora aceptan únicamente fechas y horas, un campo de tipo Moneda acepta únicamente datos monetarios, etc.

Tamaños de campo    Los tamaños de campo son otra capa de validación. Por ejemplo, si se crea un campo que almacene nombres, se puede configurarlo de modo que acepte un máximo de 20 caracteres. De este modo, se puede evitar que usuarios malintencionados peguen grandes cantidades de texto incoherente en el campo, o bien, que un usuario sin experiencia escriba por error un nombre y un apellido en un campo diseñado para que sólo pueda contener un nombre.

Propiedades de tabla    Las propiedades de tabla proporcionan tipos de validación muy específicos. Por ejemplo, se puede establecer la propiedad Requerido en y, como resultado, obligar a los usuarios a escribir un valor en un campo.

Se puede usar asimismo la propiedad Regla de validación para requerir que se escriban valores específicos, y la propiedad Texto de validación para informar a los usuarios de los errores. Por ejemplo, si se escribe la regla >100 Y <1000 en la propiedad Regla de validación, se obliga a los usuarios a especificar valores comprendidos entre 100 y 1.000. La regla [FechaFin]>=[FechaInicio] obliga a los usuarios a escribir una fecha de finalización igual o posterior a la fecha de inicio. Si se escribe el texto "Especifique valores comprendidos entre 100 y 1.000" o "Especifique una fecha de finalización igual o posterior a la fecha de inicio" en la propiedad Texto de validación, se indica a los usuarios que han cometido un error y se indica cómo corregirlo.

Para saber los pasos necesarios para agregar una regla de validación a un campo de tabla, vea la sección Validar datos al escribirlos en los campos de una tabla, más adelante en este artículo.

Máscaras de entrada    Se puede usar una máscara de entrada para validar los datos obligando a los usuarios a escribir los valores de una manera determinada. Por ejemplo, una máscara de entrada puede obligar a los usuarios a escribir las fechas en un formato europeo, como 14.04.2007.


Puede usar algunas o todas estas técnicas para validar los datos. Algunas de estas características, como los tipos de datos, forman parte de la base de datos de forma predeterminada, pero otras técnicas, como las propiedades de campo, las reglas de validación y las máscaras de entrada, las puede usar a su discreción.

linkografia:
https://support.office.com/es-hn/article/Crear-una-regla-de-validaci%C3%B3n-para-validar-los-datos-de-un-campo-b91c6b15-bcd3-42c1-90bf-e3a0272e988d?ui=es-ES&rs=es-HN&ad=HN