Bueno, esto sería “aprenda diseño de bases de datos en cinco minutos”. Te 
cuento algo de la teoría base que deberías saber.

 

La definición de entidad está intrínsecamente ligada a las bases de datos 
relacionales: “es cualquier objeto distinto de los demás dentro de un minimundo 
o dominio del problema”. El minimundo de una base de datos es el subconjunto 
del mundo real que se replica en un sistema de información. Los sistemas de 
información tienden a replicar dentro de si la organización que presenta el 
mundo real, pero mientras el mundo real tiene millones de objetos, el minimundo 
es sólo un subconjunto muy acotado de aquél. Por ejemplo, en un sistema de 
gestión ventas, un objeto cliente es distinto de articulo, y éste distinto de 
factura, y de cuenta_corriente_cliente, y asi podríamos seguir, conformando un 
conjunto de objetos distintos dentro de este minimundo. Pero dentro de 
artículo, un objeto “clavo” es distinto de uno “martillo”.

 

Una entidad se describe por sus atributos. Por ejemplo, para la entidad 
articulo, necesitaremos un atributo “precio”, otro “descripción”, pero solo se 
describen aquellos atributos que tengan que ver con el dominio del problema. 
Por ejemplo, para un sistema de liquidación de sueldos, no importará almacenar 
el atributo “color de piel” o “peso” del empleado, pero si su DNI, etc. El 
diseñador de la base de datos es quien decide qué atributos describir 
(almacenar).

 

Estrictamente hablando entonces, si un objeto artículo es distinto de los 
demás, tenemos entonces que el “conjunto de entidades” es la agrupación de 
entidades similares. Este conjunto es lo que nosotros conocemos físicamente 
como “tabla”. La tabla es la expresión física de un conjunto de entidades, 
donde cada fila de la tabla es una entidad.  Cada columna de la tabla es un 
atributo de la entidad.

 

Por teoría de conjuntos, es necesario ubicar unívocamente una entidad dentro 
del conjunto de entidades, por lo tanto es necesario introducir el concepto de 
clave: la clave es el conjunto mínimo de atributos que identifican unívocamente 
la existencia de una entidad. Una entidad por lo tanto puede tener muchas 
claves, es decir, muchos conjuntos de atributos que cumplan con esa definición. 
Por ejemplo, la entidad ALUMNO puede tener un atributo DNI y un atributo 
LEGAJO, y ambos cumplen con esa definición. Al haber más de una clave, es 
necesario elegir una para que sea la primaria, y las restantes se denominan 
claves candidatas. En cambio, el conjunto (DNI, LEGAJO) NO es una clave, porque 
no es un conjunto mínimo, sino que es una SUPERCLAVE, que si bien sirve como 
clave , no se la puede aceptar como tal. De aquí se desprende el axioma: en una 
tabla (entidad) , el conjunto de todos sus atributos (columnas) debe ser 
siempre necesariamente una superclave.

 

Para afinar conceptos, la tabla ARTICULO en un RDBMS como SQL Server, no es 
otra cosa más que el almacén de muchas entidades similares, es decir que 
comparten los mismos atributos. Todas las entidades almacenadas en un mismo 
conjunto (tabla) deben necesariamente tener los mismos atributos, un atributo 
distinto y estamos en presencia de otro tipo de entidad. 

 

Peter I. Chen escribió gran parte de esto en su paper “The entity-relationship 
model: towards a unified view of data”,  en 1977, considerado uno de los más 
influentes en la informática de todos los tiempos,  donde el daba el concepto 
de entidad y de vínculo entre entidades, creador del diagrama Entidad-Relación 
(DER). El proponía expresar este minimundo de la base datos como un diagrama 
visual, es en realidad un lenguaje de símbolos geométricos. Esto se fue 
perfeccionando, debido a que los símbolos propuestos por Chen tenían algunos 
problemas en expresar semánticas complicadas entre tres o mas conjuntos de 
entidades. Actualmente, existen varios lenguajes descriptivos para los esquemas 
de las bases de datos (los DERs), el mas usado es el IDEFX1, un derivado 
(bastante pobre por cierto) es el que se usa en SQL Server para “ver” los 
esquemas físicos de las bases de datos. Pero ya sea IDEFX1 o notación Chen, la 
idea es que uno mirando el diagrama pueda expresar la “semántica” de la base de 
datos por el modelo Sustantivo-Verbo-Adjetivo. El sustantivo serían las tablas 
o entidades: ARTICULO, CLIENTE, etc. El verbo sería el vínculo o relationship 
entre ellos (CONTIENE A, PERTENECE A, CONTENIDO EN), y los adjetivos serían los 
atributos de cada sustantivo (ID, NOMBRE, APELLIDO, DNI, etc.). Por lo tanto, 
un diagrama Chen se puede expresar mediante oraciones el esquema de una base de 
datos.

 

Con el tiempo, se fue abandonando el uso del término “conjunto de entidades” 
para quedar solamente en “entidades”, y es lícito usarlo teniendo siempre en 
cuenta que en un DER, al decir “la entidad ARTICULO” se hace referencia en 
realidad al conjunto de entidades y no a una fila en particular (el diagrama 
DER representa conjunto de entidades, tablas). Pero para el mundo cotidiano no 
hace la diferencia.

 

Espero que se haya entendido algo

 

Carlos

 

 

De: puntonet@mug.org.ar [mailto:[EMAIL PROTECTED] En nombre de xWin2
Enviado el: Jueves, 05 de Junio de 2008 10:58 p.m.
Para: puntonet@mug.org.ar
Asunto: [puntonet] Consulta, que es una Entidad?

 

Hola a Todos!

Alguien me puede explicar que es una Entidad (en programación), como se 
utilizan, etc. y si tienen links con más info mejor... ;)

Gracias!


__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis! 
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar

__________ Informaci󮠤e NOD32, revisi󮠲980 (20080328) __________

Este mensaje ha sido analizado con NOD32 antivirus system
http://www.nod32.com

Responder a