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 __________ Informacie NOD32, revisi980 (20080328) __________ Este mensaje ha sido analizado con NOD32 antivirus system http://www.nod32.com