Sunteți pe pagina 1din 11

Tutorial Entidad- Relacin para modelar Bases de datos.

Se incluye el Modelo Relacional

MODELO ENTIDAD-RELACIN
Denominado por sus siglas como: E-R; Este modelo representa a la realidad a travs de un esquema grfico empleando los terminologa de entidades, que son objetos que existen y son los elementos principales que se identifican en el problema a resolver con el diagramado y se distinguen de otros por sus caractersticas particulares denominadas atributos, el enlace que que rige la unin de las entidades esta representada por la relacin del modelo. El modelado entidad-relacin es una tcnica para el modelado de datos utilizando diagramas entidad relacin.

Consiste en los siguientes pasos: 1. Se parte de una descripcin textual del problema o sistema de informacin a automatizar (los requisitos). 2. Se hace una lista de los sustantivos y verbos que aparecen. 3. Los sustantivos son posibles entidades o atributos. 4. Los verbos son posibles relaciones. 5. Analizando las frases se determina la cardinalidad de las relaciones y otros detalles. 6. Se elabora el diagrama (o diagramas) entidad-relacin. 7. Se completa el modelo con listas de atributos y una descripcin de otras restricciones que no se pueden reflejar en el diagrama.

Entidad
Representa una cosa u "objeto" del mundo real con existencia independiente, es decir, se diferencia unvocamente de cualquier otro objeto o cosa, incluso siendo del mismo tipo.

Ejemplos:
y y y

Una persona. (Se diferencia de cualquier otra persona, incluso siendo gemelos). Un automvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrn atributos diferentes, por ejemplo el nmero de motor). Una casa (Aunque sea exactamente igual a otra, aun se diferenciara en su direccin).

Empleados, clientes, empresas, oficios, diseos de productos, conciertos, excursiones, etc. Las entidades se representan grficamente mediante rectngulos y su nombre aparece en el interior. Un nombre de entidad slo puede aparecer una vez en el esquema conceptual.

Atributos
Es una caracterstica de inters o un hecho sobre una entidad o sobre una relacin. Los atributos representan las propiedades bsicas de las entidades y de las relaciones. Toda la informacin extensiva es portada por los atributos. Grficamente, se representan mediante bolitas que cuelgan de las entidades o relaciones a las que pertenecen. Los atributos son las propiedades que describen a cada entidad en un conjunto de entidades. Un conjunto de entidades dentro de una entidad, tiene valores especficos asignados para cada uno de sus atributos, de esta forma, es posible su identificacin univoca. Ejemplos: A la coleccin de entidades Alumnos, con el siguiente conjunto de atributos en comn, (id, nombre, edad, semestre), pertenecen las entidades:
y y y y

(1, Mara, 16 aos, 2) (2, Sara, 18 aos, 5) (3, Mara, 17 aos, 2) ...

Cada una de las entidades pertenecientes a este conjunto se diferencia de las dems por el valor de sus atributos. Ntese que dos o ms entidades diferentes pueden tener los mismos valores para algunos de sus atributos, pero nunca para todos.

Dominio
Un dominio describe un conjunto de posibles valores para cierto atributo. Como un dominio restringe los valores del atributo, puede ser considerado como una restriccin. Matemticamente, atribuir un dominio a un atributo significa "todos los valores de este atributo deben de ser elementos del conjunto especificado". Para cada atributo, existe un dominio del mismo, este hace referencia al tipo de datos que sera almacenado o a restricciones en los valores que el atributo puede tomar (Cadenas de caracteres, nmeros, solo dos letras, solo nmeros mayores que cero, solo nmeros enteros, enteros, cadenas de texto, fecha, etc...). Cuando una entidad no tiene un valor para un atributo dado, este toma el valor nulo, bien sea que no se conoce, que no existe o que no se sabe nada al respecto del mismo.

Relacin
Es una correspondencia o asociacin entre dos o ms entidades. Cada relacin tiene un nombre que describe su funcin. Las relaciones se representan grficamente mediante

rombos y su nombre aparece en el interior. Las entidades que estn involucradas en una determinada relacin se denominan entidades participantes. El nmero de participantes en una relacin es lo que se denomina grado de la relacin. Por lo tanto, una relacin en la que participan dos entidades es una relacin binaria; si son tres las entidades participantes, la relacin es ternaria; etc.

Correspondencia de cardinalidades
Dado un conjunto de relaciones, en el que participan dos o ms conjuntos de entidades, la correspondencia de cardinalidad indica, el nmero de entidades con las que puede estar relacionada una entidad dada. Dado un conjunto de relaciones binarias y los conjuntos de entidades A y B, la correspondecia de cardinalidades puede ser:
y

Uno a uno: Una entidad de A se relaciona nicamente con una entidad en B y viceversa. Por ejemplo: El noviazgo, el RFC de cada persona, El CURP personal, El acta de nacimiento, ya que solo existe un solo documento de este tipo para cada una de las diferentes personas.

Uno a varios: Una entidad en A se relaciona con cero o muchas entidades en B. Pero una entidad en B se relaciona con una nica entidad en A. Por ejemplo: Cliente Cuenta en un banco, Padre-Hijos, Camin-Pasajeros, zoologico- animales, rbol hojas.

Uno a varios:Varios a varios: Una entidad en A se puede relacionar con 0 o muchas entidades en B y viceversa. Ejemplo: Arquitecto proyectos, fiesta personas, estudiante materias.

NOTA: Cabe mencionar que la cardinalidad para cada conjunto de entidades depende del punto de vista que se le de al modelo en estudio, claro esta, sujetndose a la realidad.

Llaves primarias.
La distincin de una entidad entre otra se debe a sus atributos, lo cual lo hacen nico. Una llave primaria es aquel atributo el cual consideramos clave para la identificacin de los dems atributos que describen a la entidad. Por ejemplo, si consideramos la entidad ALUMNO del CBTis123, podramos tener los siguientes atributos: Nombre Apellido, Semestre, Especialidad, Direccin, Telfono, Nmero de control, de todos estos atributos el que podremos designar como llave primaria es el nmero de control, ya que es diferente para cada alumno y este nos identifica en la institucin. Claro que puede haber ms de un atributo que pueda identificarse como llave primaria en este caso se selecciona la que consideremos ms importante, los dems atributos son

denominados llaves secundarias. Una clave o llave primaria es indicada grficamente en el modelo E-R con una lnea debajo del nombre del atributo.

Diagrama Entidad-Relacin
Denominado por sus siglas como: E-R; Este modelo representa a la realidad a travs de un esquema grfico empleando los terminologa de entidades, atributos y el enlace que rige la unin de las entidades esta representada por la relacin del modelo. Nuestra representacin grfica es la siguiente: Un rectngulo nos representa a las entidades; una elipse a los atributos de las entidades, y una etiqueta dentro de un rombo nos indica la relacin que existe entre las entidades, destacando con lneas las uniones de estas y que la llave primaria de una entidad es aquel atributo que se encuentra subrayado.

Ejemplos de diagramas Entidad - Relacin

Relacin UNO a UNO

Indicamos con este ejemplo que existe una relacin de pertenencia de uno a uno, ya que existe una tarjeta de circulacin registrada por cada automvil.

Relacin UNO a MUCHOS

El siguiente ejemplo indica que un cliente puede tener muchas cuentas, pero que una cuenta puede llegar a pertenecer a un solo cliente (Decimos puede, ya que existen cuentas registradas a favor de ms de una persona).

Paso del modelo E-R al modelo relacional


Una base de datos relacional es un conjunto de relaciones normalizadas. Para representar el esquema de una base de datos relacional se debe dar el nombre de sus relaciones, los atributos de stas, los dominios sobre los que se definen estos atributos, las claves primarias y las claves ajenas. Ejemplo de una relacin Muchos a Muchos y su transformacin. Partiendo de nuestro diagrama E - R

Esquema relacional
Una base de datos relacional es un conjunto de relaciones normalizadas. Para representar el esquema de una base de datos relacional se debe dar el nombre de sus relaciones, los atributos de stas, los dominios sobre los que se definen estos atributos, las claves primarias y las claves ajenas. ESTUDIANTE (CONTROL, APELLIDO, PROMEDIO) CURSO (NUMERO_CURSO, NOMBRE_CURSO) INSCRITO_EN (CONTROL, NUMERO_CURSO, SEMESTRE, CALIF)

En el esquema, los nombres de las relaciones aparecen seguidos de los nombres de los atributos encerrados entre parntesis. Las claves primarias son los atributos subrayados. El siguiente paso ser transformar el esquema relacional en Tablas. A continuacin se muestra un estado (instancia) de la base de datos cuyo esquema se acaba de definir. ESTUDIANTE Control 12345 9876 5678 Apellido Lpez Martnez Soriano Promedio 8 9 9

CURSO Numero_curso 012 025 034 Nombre_curso Diseo Programacin Estructuras

INSCRITO Control 12345 9876 9876 Numero_curso Semestre 012 025 034 3 5 5 9 8 10 Calif

Cada tabla contiene una Instancia de nuestra base de datos.

Bases de datos relacionales


Las bases de datos que pertenecen a esta categora se basan en el modelo relaciones, cuya estructura principal es la relacin, es decir una tabla bidimensional compuesta por lneas y columnas. Cada lnea, que en terminologa relacional se llamatupla, representa una entidad que nosotros queremos memorizar en la base de datos. las caractersticas de cada entidad estn definidas por las columnas de las relaciones, que se llaman atributos. Entidades con caractersticas comunes, es decir descritas por el mismo conjunto de atributos, formarn parte de la misma relacin.

Diferencia entre un DBMS y una base de datos.


La base de datos es una coleccin de archivos interrelacionados almacenados en conjunto sin redundancia y la dbms es un conjunto de nmerosas rutinas de software interrelacionadas cada una de ellas es responsable de una determinada tarea. Eleccin apropiada de un DBMS Se tiene que elegir el que tenga la mejor interfaz a las necesidades de la empresa y sobre todo que este apto para la base de datos que vayamos a utilizar. Componentes de un sistema de base de datos.
y y y y

Personas Mquinas Programas Datos

Los datos.
Es lo que se conoce como base de datos propiamente dicha. Para manejar estos datos utilizamos una serie de programas.

Los Programas.
Son los encargados de manejar los datos, son conocidos como DBMS (Data Base Management System) o tambin SGBD (Sistema Gestor de Base de Datos). Los DBMS tienen dos funciones principales que son: - La definicin de las estructuras para almacenar los datos. - La manipulacin de los datos. El lenguaje ms habitual para construir las consultas a bases de datos relacionales es SQL, StructuredQueryLanguage o Lenguaje Estructurado de Consultas, un estndar implementado por los principales motores o sistemas de gestin de bases de datos relacionales. Durante su diseo, una base de datos relacional pasa por un proceso al que se le conoce como normalizacin de una base de datos.

Formas normales
Las relaciones que describe Codd al definir su modelo relacional, son transformadas en tablas al momento de trabajar con una base de datos. Las Formas Normales buscan optimizar estas estructuras eliminando bsicamente la redundancia utilizando como medio principal las dependencias funcionales. Las Formas Normales son un pequeo nmero de

reglas que de cumplirse hacen que las estructuras posean la menor cantidad de redundancia posible.
y y y y y

Primera Forma Normal (1NF): No hay campos mltiples (todo los campos son atmicos). Todas las filas deben tener el mismo nmero de columnas. Segunda Forma Normal (2NF): Todo campo que no sea clave debe depender por completo de toda la clave. Tercera Forma Normal (3NF): No hay dependencias transitivas. Un campo debe depender de la clave y no de otro campo. Forma Normal de Boyce-Codd (BCNF): Todos los determinantes de la tabla son clave candidata. Cuarta Forma Normal (4NF): Una fila no debe contener dos o ms campos multivalorados (aquellos que pueden contener ms de un valor simultneamente) sobre una entidad. Quinta Forma Normal (5NF): Una tabla puede almacenar atributos dependientes a la clave slo por unin.

Clave nica
Cada tabla puede tener uno o ms campos cuyos valores identifican de forma nica cada registro de dicha tabla, es decir, no pueden existir dos o ms registros diferentes cuyos valores en dichos campos sean idnticos. Este conjunto de campos se llama clave nica. Pueden existir varias claves nicas en una determinada tabla, y a cada una de stas suele llamrsele candidata a clave primaria.

Clave primaria
Una clave primaria es una clave nica elegida entre todas las candidatas, para especificar los datos que sern relacionados con las dems tablas. La forma de hacer esto es por medio de claves forneas. Slo puede existir una clave primaria por tabla y ningn campo de dicha clave puede contener valores NULL.

Clave fornea
Una clave fornea es una referencia a una clave en otra tabla. Las claves forneas no necesitan ser claves nicas. Por ejemplo, el cdigo de departamento puede ser una clave fornea en la tabla de empleados, pero obviamente se permite que haya varios empleados en un mismo departamento.

Clave ndice
Las claves ndice surgen con la necesidad de tener un acceso ms rpido a los datos. Los ndices pueden ser creados con cualquier combinacin de campos de una tabla. Las

consultas que filtran registros por medio de estos campos, pueden encontrar los registros de forma no secuencial usando la clave ndice.

Integridad referencial.
La integridad referencial es un sistema de reglas que utilizan la mayora de las bases de datos relacionales para asegurarse que los registros de tablas relacionadas son vlidos y que no se borren o cambien datos relacionados de forma accidental produciendo errores de integridad. Recordemos el tipo de relaciones que se pueden tener en una base de datos relacional. Entre dos tablas de cualquier base de datos relacional pueden haber dos tipos de relaciones, relaciones uno a uno y relaciones uno a muchos:

Relacin Uno a Uno


Cuando un registro de una tabla slo puede estar relacionado con un nico registro de la otra tabla y viceversa. Por ejemplo: tenemos dos tablas una de empleados y otra de departamentos y queremos saber qu empleado es jefe de qu departamento, tenemos una relacin uno a uno entre las dos tablas ya que un departamento tiene un solo jefe y un empleado puede ser jefe de un solo departamento.

Relacin Uno a Varios:


Cuando un registro de una tabla (tabla secundaria) slo puede estar relacionado con un nico registro de la otra tabla (tabla principal) y un registro de la tabla principal puede tener ms de un registro relacionado en la tabla secundaria, en este caso se suele hacer referencia a la tabla principal como tabla 'padre' y a la tabla secundaria como tabla 'hijo', entonces la regla se convierte en 'un padre puede tener varios hijos pero un hijo solo tiene un padre. Por ejemplo: tenemos dos tablas una con los datos de diferentes poblaciones y otra con los habitantes, una poblacin puede tener ms de un habitante, pero un habitante pertenecer (estar empadronado) en una nica poblacin. En este caso la tabla principal ser la de poblaciones y la tabla secundaria ser la de habitantes. Una poblacin puede tener varios habitantes pero un habitante pertenece a una sola poblacin. Esta relacin se representa incluyendo en la tabla 'hijo' una columna que se corresponde con la clave principal de la tabla 'padre', esta columna es lo denominamos clave fornea (o clave ajena o clave externa). Una clave fornea es pues un campo de una tabla que contiene una referencia a un registro de otra tabla. Siguiendo nuestro ejemplo en la tabla habitantes tenemos una columna poblacin que contiene el cdigo de la poblacin en la que est empadronado el habitante,

esta columna es clave ajena de la tabla habitantes, y en la tabla poblaciones tenemos una columna codigo de poblacion clave principal de la tabla.

Relacin Varios a Varios:


Cuando un registro de una tabla puede estar relacionado con ms de un registro de la otra tabla y viceversa. En este caso las dos tablas no pueden estar relacionadas directamente, se tiene que aadir una tabla entre las dos que incluya los pares de valores relacionados entre s. Por ejemplo: tenemos dos tablas una con los datos de clientes y otra con los artculos que se venden en la empresa, un cliente podr realizar un pedido con varios artculos, y un artculo podr ser vendido a ms de un cliente. No se puede definir entre clientes y artculos, hace falta otra tabla (por ejemplo una tabla de pedidos) relacionada con clientes y con artculos. La tabla pedidos estar relacionada con cliente por una relacin uno a muchos y tambin estar relacionada con artculos por un relacin uno a muchos.

Integridad referencial
Cuando se define una columna como clave fornea, las filas de la tabla pueden contener en esa columna o bien el valor nulo (valor desconocido), o bien un valor que existe en la otra tabla, un error sera asignar a un habitante una poblacin que no est en la tabla de poblaciones. NOTA:En SQL, NULL no es un valor. Es una condicin, o estado, de un dato, en el cual su valor es desconocido. Debido a que es desconocido, NULL no puede comportarse como un

valor. Cuando Ud. intenta realizar operaciones aritmticas con NULL, o lo mezcla con valores en otras expresiones, el resultado de la operacin ser siempre NULL. No es cero o blanco o una cadena vaca y no se comporta como ninguno de estos valores. Piense en NULL como DESCONOCIDO para que podamos entender algunos resultados. Si el valor de Numero es desconocido: 1 + 2 + 3 + Numero = NULL (desconocido). Fin NOTA Eso es lo que se denomina integridad referencial y consiste en que los datos que referencian otros (claves forneas) deben ser correctos. La integridad referencial hace que el sistema gestor de la base de datos se asegure de que no hayan en las claves forneas valores que no estn en la tabla principal. La integridad referencial se activa en cuanto creamos una clave fornea y a partir de ese momento se comprueba cada vez que se modifiquen datos que puedan alterarla.

Actualizacin y borrado en cascada


El actualizar y/o eliminar registros en cascada, son opciones que se definen cuando definimos la clave fornea y que le indican al sistema gestor qu hacer.

Actualizar registros en cascada:


Esta opcin le indica al sistema gestor de la base de datos que cuando se cambie un valor del campo clave de la tabla principal, automticamente cambiar el valor de la clave fornea de los registros relacionados en la tabla secundaria.

Eliminar registros en cascada:


Esta opcin le indica al sistema gestor de la base de datos que cuando se elimina un registro de la tabla principal automticamente se borran tambin los registros relacionados en la tabla secundaria.

S-ar putea să vă placă și