Vad är en Entity, Entity Type och Entity Set?
Om vi har en grupp tangentbord som är från samma företag, samma färg, samma utseende, då kan vi inte skilja mellan dem bara genom att se dem. Vi kan bara skilja mellan dem om vi känner till produktnumret som är unikt för varje tangentbord. Så om vi inte känner till detta produktnummer kan dessa tangentbord inte identifieras från en grupp och de är bara objekt. Varför betonar vi så mycket på att identifiera dem unikt? Också, varför tar vi exemplet på ett tangentbord i DBMS?
anledningen är enkel, precis som tangentborden måste vi hämta data från databasen och var och en av dem ska ha ett unikt värde som kan användas för att skilja mellan två olika data. Så när ett objekt blir unikt identifierbart kan vi kalla det en enhet. Låt oss nu se mer ingående vad som är en enhet och vad är entitetstyper och entitetssatser.
Entity
en entitet är en verklig sak som tydligt kan identifieras som en person, plats eller ett koncept. Det är ett objekt som kan särskiljas från andra. Om vi inte kan skilja det från andra är det ett objekt men inte en enhet. En enhet kan vara av två typer:
materiell enhet: materiella enheter är de enheter som finns i den verkliga världen fysiskt. Exempel: Person, bil etc.
immateriella enheter: immateriella enheter är de enheter som bara existerar logiskt och inte har någon fysisk existens. Exempel: Bankkonto etc.
exempel: Om vi har en tabell över en Student (Roll_no, Student_name, Age, Mobile_no) är varje elev i den tabellen en enhet och kan identifieras unikt med deras Rullnummer, dvs Roll_no.
Obs: i E-R-modellen representerar vi inte data men vi representerar strukturen eller schemat. När vi konverterar E – r-modell till relationell modell kan data lagras i tupel eller rad och därmed representeras som en enhet.
entitetstyp
entitetstypen är en samling av entiteten som har liknande attribut. I ovanstående Studentbordsexempel har vi varje rad som en enhet och de har gemensamma attribut, dvs varje rad har sitt eget värde för attribut Roll_no, ålder, studentnamn och Mobile_no. Så vi kan definiera ovanstående STUDENTTABELL som en entitetstyp eftersom det är en samling enheter som har samma attribut. Så en entitetstyp i ett ER-diagram definieras av ett namn(här, STUDENT) och en uppsättning attribut(här, Roll_no, Student_name, Age, Mobile_no). Tabellen nedan visar hur data från olika enheter( olika studenter) lagras.
E-r-representationen av ovanstående Studentenhetstyp görs nedan.
Obs: vi använder en rektangel för att representera en entitetstyp i E-r-diagrammet, inte entitet.
typer av entitetstyp
- stark entitetstyp
- svag entitetstyp
stark entitetstyp: Stark entitet är de entitetstyper som har ett nyckelattribut. Den primära nyckeln hjälper till att identifiera varje enhet unikt. Den representeras av en rektangel. I ovanstående exempel identifierar Roll_no varje element i tabellen unikt och därmed kan vi säga att STUDENT är en stark Enhetstyp.
svag entitetstyp: svag entitetstyp har inget nyckelattribut. Svag Enhetstyp kan inte identifieras på egen hand. Det beror på någon annan stark enhet för sin distinkta identitet. Detta kan förstås med ett verkligt exempel. Det kan bara finnas barn om föräldern lämnar. Det kan inte finnas någon självständig existens av barn. Det kan bara finnas ett rum om byggnaden går ut. Det kan inte finnas någon självständig existens av ett rum. En svag enhet representeras av en dubbel skisserad rektangel. Förhållandet mellan en svag entitetstyp och stark entitetstyp kallas ett identifierande förhållande och visas med en dubbel skisserad diamant istället för en enda skisserad diamant. Denna representation kan ses i diagrammet nedan.
exempel: Om vi har två tabeller av kunden(Customer_id, namn, Mobile_no, ålder, kön) och adress (ort, Stad, Stat, Customer_id). Här kan vi inte identifiera adressen unikt eftersom det kan finnas många kunder från samma ort. Så för detta behöver vi ett attribut av stark entitetstyp, dvs ’kund’ här för att unikt identifiera enheter av ’adress’ entitetstyp.
Entity Set
Entity Set är en samling enheter av samma entitetstyp. I ovanstående exempel på STUDENTENHETSTYP skulle en samling enheter från Studentenhetstypen bilda en entitetsuppsättning. Vi kan säga att entitetstyp är en superset av entitetssatsen eftersom alla enheter ingår i entitetstypen. Låt oss försöka förstå detta med hjälp av ett exempel.
exempel 1: i exemplet nedan bildar två enheter E1 (2, Angel, 19, 8709054568) och E2(4, Analisa, 21, 9847852156) en entitetssats.
exempel 2: Vi kan bilda en annan enhet genom att ta tre enheter från tabellen. (2, ängel, 19, 8709054568), (3, Priya, 20, 9864257315) och (4, Analisa, 21, 9847852156) kan också bilda en enhetsuppsättning. På liknande sätt kan vi bilda valfri kombination av entitetsuppsättningen med någon av enheterna från entitetstypen ’STUDENT’. Vi kan också förstå att om vi tar alla poster till entitetsuppsättningen får vi entitetstypen ’STUDENT’. Så vi kan säga att entitetstypen är superset för entitetssatsen.
det här handlar om en enhet, entitetstyp och entitetssats. Hoppas du lärde dig skillnaden mellan dessa termer.