2. El model E/R
El Model Entitat-Relació (E/R) és un model de dades que permet representar la realitat en termes d'entitats, atributs i relacions entre entitats. Veiem qui són aquests elements i com es representen gràficament.
2.1 Entitats
Definició
Entitat: Representa un conjunt de persones, llocs, coses, conceptes o successos (reals o abstractes), d'interés per a l'organització. És aquell objecte sobre el qual volem emmagatzemar informació en la BD.
Exemples: llibres, persones, alumnes, vehicles.
Representació gràfica
Per exemple, suposem que ens han manat fer una base de dades per a la biblioteca municipal. Després d'haver-nos entrevistat amb el bibliotecari, etc., hem fet una anàlisi de requeriments de les necessitats de la biblioteca, consistent en un llistat de la informació que ha de gestionar la futura base de dades. En eixos requeriments, si diu alguna cosa com "Caldrà guardar la informació de socis, llibres i autors", veiem que hi ha, de moment, 3 entitats: socis, llibres i autors. En l'esquema E-R les representarem així:

La representació gràfica d'una entitat és un rectangle etiquetat amb el nom de l'entitat en MAJÚSCULES. Un nom d'entitat només pot aparéixer una vegada a l'esquema. Els noms de les entitats són substantius (ja vorem que el nom de les relacions són verbs) i és aconsellable posar-los en plural ("LLIBRES" i no "LLIBRE").
Elements de l'E-R

Ocurrències d'una entitat
Cal diferenciar entre entitat i ocurrències de l'entitat: entitat és l'estructura genèrica i ocurrència d'entitat és cadascun dels objectes que representa eixa entitat (però que no es posa a l'esquema E-R, clar). Per exemple:
- L'entitat LLIBRES es referix a l'estructura que ens descriu les característiques dels llibres.
- Les ocurrències de LLIBRES seran cadascun dels llibres, com per exemple El nom de la Rosa, Tirant lo Blanc, Nosaltres els valencians...
Resumint
Una entitat representa N ocurrències d'eixa entitat. És a dir: l'entitat LLIBRES representa els centenars de llibres que podria tindre la biblioteca. Cadascun d'eixos llibres és una ocurrència de l'entitat LLIBRES.
Selecció múltiple — Exercici d'Entitats en E-R
L'anàlisi de requeriments d'un videoclub diu:
"Pep, Joan i Maria són els empleats d'un videoclub. Pep, el gerent, ens ha dit que cal guardar informació dels socis, de les pel·lícules, dels empleats i de quines pel·lícules es presten a cada soci."
Quines entitats creus que cal posar en el corresponent esquema E-R?
- [ ] INFORMACIÓ
- [x] SOCIS
- [x] PEL·LÍCULES
- [ ] PRÉSTECS
- [x] EMPLEATS
- [ ] PEP
- [ ] JOAN
- [ ] MARIA
Solució raonada:
- INFORMACIÓ: És tot el que es guarda en la base de dades. No té sentit crear una entitat genèrica.
- PRÉSTECS: Encara que podria semblar una entitat a primera vista, realment associa socis i pel·lícules. És una relació entre les entitats
SOCISiPEL·LÍCULES(ho vorem en l'apartat 2.3). - PEP, JOAN i MARIA: No són entitats, sinó instàncies/ocurrències concretes de l'entitat
EMPLEATS.
2.2 Atributs
Definició
Atribut: És cadascuna de les propietats que té una entitat (o una relació, ja ho vorem).
Exemples: per a l'entitat
LLIBRESels atributs podrien ser:TÍTOL,AUTOR,EDITORIAL,ANY_EDICIÓ,ISBN...
Ara bé, només ens interessaran aquells atributs indicats en l'anàlisi de requeriments.
Reflexió — Entitats i Atributs
Si en l'anàlisi de requeriments diu alguna cosa com:
"Cada llibre s'identificarà per un codi i, a més del nom, voldrem guardar el tipus de llibre (la lletra inicial de: Por, Ficció, Infantil, Humor, Assaig)"
1. Quina seria l'entitat?
- [ ] Por, Ficció, Infantil, Humor, Assaig
- [x] LLIBRES
- [ ] CODI
2. Quins serien els atributs de l'entitat?
- [ ] codi, nom, Por, Ficció, Infantil
- [x] codi, nom, tipus
- [ ] codi, nom, tipus, lletra
Solució raonada:
- L'entitat seria LLIBRES.
- Els atributs de LLIBRES serien codi, nom i tipus.
- Compte: "Por, Ficció, Infantil..." no són atributs, sinó possibles valors de l'atribut "tipus" (el seu domini).
Representació gràfica
L'atribut es representa mitjançant el·lipses amb un nom, unides amb un arc a l'entitat (o relació) que descriu.

Domini de l'atribut
El domini d'un atribut és el conjunt de possibles valors que pot prendre un atribut.
Per simplicitat, en l'E-R no posarem el domini de cada atribut sinó que només indicarem els possibles valors en aquells camps on ho indique l'anàlisi de requeriments de forma explícita. I ho representarem junt a l'atribut de l'esquema E-R. Així:

2.2.1 Tipus d'atributs segons la seua funció
Atribut identificador (clau)
Permet distingir entre les distintes ocurrències d'una entitat. Es representa subratllant el nom de l'atribut. També se li anomena "la clau" de l'entitat. Dos ocurrències d'una entitat no poden tindre el mateix valor en l'atribut identificador.

No poden haver 2 clients que tinguen el mateix número de DNI.
| DNI |
|---|
| 76.333.333H |
| 87.333.445A |
| 54.233.567C |
Note
Tota entitat ha de tindre un atribut identificador.
Atribut descriptor
Descriu les ocurrències d'una entitat o relació. És a dir: són els atributs "que no són clau". Es representa simplement amb l'el·lipse, sense subratllar el nom.

En l'exemple anterior, nom i data_naix són atributs descriptors.
Atribut "no nul"
Un atribut no nul és un atribut descriptor que indica que totes les ocurrències de l'entitat han de tindre un valor obligatòriament en eixe atribut.
Es simbolitza mitjançant un xicotet cercle entre l'arc i l'el·lipse.
En l'exemple, l'atribut nom és un atribut no nul. Així estem dient que tots els clients han de tindre, obligatòriament, un nom. Però podem permetre que hi haja clients que no tinguen res en el camp data_naix.
Note
Els atributs clau són no nuls però no se'ls posa el redolinet.
Qüestió Veritat / Mentida — Propietats dels Atributs en E-R
A partir de l'esquema E-R anterior (l'entitat CLIENTS amb els atributs DNI [clau], nom i data_naix), avalua les següents afirmacions:
| DNI | Nom | Data_naix |
|---|---|---|
| 76333333H | Pep | 08/07/1970 |
| 87333445A | Abdó | 08/07/1970 |
| 54233567C | Neus | 01/12/1998 |
| 45654322N | Neus | 12/12/2002 |
| 77654432D | Pepa | (nul) |
1. Poden haver-hi 2 o més clients que tinguen el mateix DNI.
- [ ] Veritat
- [x] Mentida
2. Poden haver-hi 2 o més clients que tinguen el mateix nom.
- [x] Veritat
- [ ] Mentida
3. Tots els clients han de tindre un DNI obligatòriament.
- [x] Veritat
- [ ] Mentida
4. Tots els clients han de tindre un nom obligatòriament.
- [x] Veritat
- [ ] Mentida
5. Tots els clients han de tindre obligatòriament una data de naixement.
- [ ] Veritat
- [x] Mentida
Solució raonada:
- FALS: El DNI és l'atribut clau (identificador únic). No pot tindre valors duplicats (p. ex. 76.333.333H no es pot repetir).
- VERITAT: Com que el nom no és clau (no està subratllat), s'accepten clients amb el mateix nom (veure cas de "Neus" en la taula).
- VERITAT: Com que el DNI és l'atribut clau, a més de ser únic, no admet valors nuls.
- VERITAT: En l'esquema E-R, el nom s'ha definit com un atribut obligatori, per tant cap client pot quedar-se sense nom.
- FALS: Si l'atribut
data_naixno té la marca d'obligatorietat (o "el cercle/redolinet"), s'indica que és opcional i pot haver-hi clients sense aquest dada (com en la darrera fila de la taula).
2.2.2 Tipus d'atributs segons la seua estructura
Atribut simple
Per a cada ocurrència de l'entitat (o relació) que qualifiquen, l'atribut pren un únic valor. En l'exemple següent, "DNI", "Data_naix" i "Adreça" són atributs simples ja que 1 client només pot tindre 1 únic DNI, 1 única data de naixement i 1 única adreça.

| DNI | Data_naix | Adreça |
|---|---|---|
| 1 | 08/07/1970 | C/Moro, 13 (Sueca) |
| 2 | 04/03/1970 | C/Sequial, 45 (Algemesí) |
| 3 | 01/12/1998 | C/Moro, 13 (Alginet) |
Atribut multivalent
Per a cada ocurrència de l'entitat que qualifica, l'atribut pot prendre diversos valors. Es posa una "n" damunt l'arc de l'atribut.

L'atribut telèfon és multivalent (porta la "n") i representa que de cada client podem tindre guardats molts telèfons (no només un).
| DNI | Telèfons |
|---|---|
| 1 | 96-170-33-44 |
| 2 | 96-171-33-46 · 96-171-33-47 · 636-092-555 |
| 3 | |
| 4 | 96-170-44-64 · 699-076-433 |
Cada ocurrència de l'entitat CLIENTS (cada client) pot tindre 0, 1 o molts telèfons.
Atribut compost
És un atribut que està format per un conjunt d'altres atributs.

En l'exemple anterior, adreça és un atribut compost. Una ocurrència d'un atribut compost estarà formada per una ocurrència de cadascun dels seus "sub-atributs". És a dir: un client no tindrà un únic valor on posar tota l'adreça, sinó que la posarà separada en 3 valors:
| DNI | Carrer | Número | Població |
|---|---|---|---|
| 1 | C/Moro | 13 | Sueca |
| 2 | C/Sequial | 45 | Algemesí |
| 3 | C/Moro | 13 | Alginet |
!!! note title="Reflexió"
| Text Only | |
|---|---|
1 | |
Atribut derivat
El seu valor es pot calcular a partir d'altres atributs. Es representa amb una el·lipse discontínua.
Atribut compost multivalent
Es dona, per exemple, si volem guardar moltes adreces per a cada client i, a més, cada adreça està estructurada amb 3 sub-atributs: carrer, número i població.

| DNI | Carrer | Núm | Població | Carrer | Núm | Població |
|---|---|---|---|---|---|---|
| 1 | C/Moro | 13 | Sueca | C/Mayor | 2 | Sueca |
| 2 | C/Sequial | 45 | Algemesí |
2.3 Relacions
Definicions
Relació:
És una estructura que associa entitats entre sí.
Ocurrència de relació:
És l'associació d'una ocurrència de cada entitat que participa en la relació. És a dir: una ocurrència de relació és un conjunt d'ocurrències d'entitats.
Exemple de relació i ocurrències de relació
- Relació ESCRIURE: estructura que descriu una associació entre l'entitat AUTORS i l'entitat LLIBRES.
-
Ocurrències de la relació ESCRIURE: parelles d'ocurrències d'AUTORS i de LLIBRES, de forma que un autor ha escrit el llibre corresponent. Per exemple:
- Joanot Martorell - Tirant lo Blanch
- Manolo Baixauli - L'home Manuscrit
- Manolo Baixauli - La cinquena planta
Representació de la relació
Representem la relació mitjançant un rombe etiquetat amb el nom de la relació, unit mitjançant arcs a les entitats que associa.

Després vorem que el rombe pot ser un triangle si participen 3 entitats en la relació. I que els triangles del rombe podran estar en negre.
Característiques de les relacions
Una relació es caracteritza pel nom, els seus atributs, el grau i la connectivitat.
El nom de la relació
Cada relació té un nom, que la identifica dins del E-R. Per això en un diagrama E-R no poden haver 2 relacions amb el mateix nom (tampoc poden haver 2 entitats amb el mateix nom).

El nom de les relacions sol ser un verb, ja que és l'acció per la qual s'associen les entitats.
Quan representem una relació, és molt important el nom que li posem ja que, depenent d'això:
- la relació implicarà unes entitats o altres.
- la connectivitat (el tipus de relació) podrà ser diferent.
- potser que entre dos entitats hi haja més d'una relació.
Els atributs de la relació
Igual que en les entitats, les relacions també poden tindre atributs. També es representen amb el·lipses però "penjant" de la relació. Estos atributs no són de cap de les entitats sinó de la pròpia relació.
Per exemple, per a indicar la data de casament d'un home i una dona, aquest atribut no depén de l'entitat HÒMENS ni de l'entitat DONES, sinó de la relació entre les 2 entitats. És a dir, l'atribut "data" és de la relació "estar_casat":

El grau de la relació
El grau d'una relació és la quantitat d'entitats que participen en ella. Pot ser de grau 1, 2, 3 o n.
Relacions unàries (grau 1): quan una entitat es relaciona amb ella mateixa.

Note
A vegades no posarem els atributs per simplicitat dels exemples, però sí que es posen en l'E-R.
Possibles ocurrències de la relació "estar_casat":
| Persona | Persona |
|---|---|
| Pep | Pepa |
| Maria | Albert |
| Marc | Joana |
Relacions binàries (grau 2): quan participen 2 entitats en la relació.

Possibles ocurrències de la relació "condueix":
| Cotxe | Pilot |
|---|---|
| Ferrari | Michael Schumacher |
| Renault | Fernando Alonso |
Relacions ternàries (grau 3): quan associen 3 entitats.

Note
Els símbols de les relacions (rombes i triangles) els "pintarem" d'una forma o altra, però això ho vorem en l'apartat següent (connectivitat).
Possibles ocurrències de la relació "impartir":
| Professor | Grup | Assignatura | Hores |
|---|---|---|---|
| Abdó | 1DAM-SP | BD | 5 |
| Abdó | 1DAM | BD | 5 |
| Abdó | 1DAM | PRG | 8 |
| Joan Gerard | 1DAM-SP | PRG | 8 |
Relacions n-àries (grau n): quan associen més de 3 entitats. No són tan freqüents i, per tant, no les vorem.
Reflexió
Com creus que es podria representar una relació de grau 4, 5, 6...? Pensa una possible relació quaternària.
Realimentació
Es representarien amb una forma geomètrica amb "tants triangles" com entitats associe. És a dir: si fóra una relació de grau 5 es representaria amb una estrela de 5 puntes.
Si volguérem guardar la informació de quantes hores imparteix un professor una determinada assignatura a quin grup d'alumnes i en quina aula, tindríem que la relació impartir és quaternària: seria una estrela de 4 puntes que apuntarien a les entitats PROFESSORS, ASSIGNATURES, GRUPS_D'ALUMNES i AULES. I, com a atribut de la relació: hores.
Activitat desplegable
Llig i completa:
Per a representar persones, llocs, coses, conceptes o successos s'utilitza ____, que es representa amb ____.
Per a representar les seues característiques s'utilitza ____, que es representa amb ____.
Per a representar les associacions entre les entitats s'usa ____, que es representa amb ____ que uneix les entitats amb ____.
Solució
Les entitats solen ser substantius i es representen amb rectangles.
Cada entitat té diversos atributs, que descriuen com és, i es representen per el·lipses.
Per a associar entitats entre elles s'usen les relacions: un rombe que uneix les entitats mitjançant arcs.
La connectivitat de la relació
La connectivitat d'una relació és la quantitat màxima d'ocurrències amb què pot estar relacionada una ocurrència en una relació.
Per dir-ho planerament: la connectivitat és com pintem els triangles del rombe.
Com pintar una relació binària?
Per a pintar els triangles de la relació hem de fer dos preguntes sobre si una ocurrència d'una entitat pot estar relacionada amb més d'una ocurrència de l'altra entitat. Preguntarem usant el verb de la relació: una en activa i l'altra en passiva («en sentit contrari»).
Exemple: relació ser_tutor entre PROFESSORS i ALUMNES
— Donat 1 professor, de quants alumnes pot ser tutor?
Resposta: De molts → triangle negre a la part d'ALUMNES.
— Donat 1 alumne, per quants professors pot estar tutoritzat?
Resposta: Només per 1 → triangle blanc a la part de PROFESSORS.
Per tant, la connectivitat de la relació ser_tutor és 1:N (un a molts). «Un» (triangle blanc) a la part de PROFESSORS i «Molts» (triangle negre) a la part d'ALUMNES.

Compte!
NO faces la pregunta així: «Donats molts professors, quants alumnes...?». Sempre la farem a partir d'una ocurrència: «Donat 1 professor, quants...»
Tipus de connectivitats en relacions binàries
Els tipus de connectivitats d'una relació binària són:

| Tipus | Significat |
|---|---|
| 1:N | Cada A es relaciona amb molts B, cada B només amb un A |
| 1:1 | Cada A es relaciona només amb un B, i viceversa |
| N:M | Cada A es relaciona amb molts B, i cada B amb molts A |
D'1 a molts (1:N): cada ocurrència de l'entitat A pot estar relacionada amb moltes ocurrències de B. Però cada ocurrència de B només pot estar relacionada amb una ocurrència de A.
D'1 a 1 (1:1): per cada ocurrència de A només en tenim una de B, i viceversa.
De molts a molts (N:M): per cada ocurrència de A podem tindre qualsevol nombre d'ocurrències de B, i viceversa.
Nota
Entre dos entitats pot existir més d'una relació (amb igual o diferent connectivitat).

Com pintar una relació unària?
Per a saber com pintar una relació unària hem de fer les mateixes preguntes que en les binàries. La diferència és que ara tenim la mateixa entitat a les dues parts de la relació.
Els tipus de connectivitats en les relacions unàries són els mateixos que en les binàries: 1:1, 1:N i N:M.

Exemple: relació estar_casat (unària 1:1)
— Donada 1 persona, amb quantes persones pot estar casada?
Resposta: Només amb 1. Per tant, és 1:1.
Com pintar una relació ternària?
Les connectivitats de les relacions ternàries s'expressen amb 3 dades, corresponents a les connectivitats de les respectives 3 entitats. Per exemple: (1:1:N), (1:N:M), etc.

Per a saber com pintar la relació ternària hem de fer 3 preguntes. En cada pregunta es parteix d'una parella d'ocurrències de dues entitats i es pregunta amb quantes ocurrències de la 3a entitat pot estar relacionada (com a màxim).
Exemple: relació impartir entre PROFESSORS, GRUPS i ASSIGNATURES
— El professor Abdó, al grup 1DAM... quantes assignatures pot impartir? Moltes (BD i PRG)
— El professor Abdó, l'assignatura BD... a quants grups la pot impartir? Molts (1DAM i 1DAM-SP)
— L'assignatura BD al grup 1DAM-SP... quants professors la poden impartir? Només 1 (Abdó)
Per tant, la connectivitat és (1:N:M):
- (1 prof, 1 grup) → N assignatures
- (1 prof, 1 assignatura) → M grups
- (1 assignatura, 1 grup) → 1 professor
Les possibles connectivitats de les ternàries són: 1:1:1, N:M:M, 1:N:M, 1:1:N.
Altra notació: cardinalitats (mínima, màxima)
Alguns autors representen la connectivitat amb parelles (mínima, màxima) al costat de cada entitat:

- Escriure: un autor pot escriure com a mínim 1 llibre i com a màxim molts → (1,n). Un llibre pot ser escrit per 0 autors (anònim) i com a màxim molts → (0,n).
- Nàixer: un autor ha nascut en exactament 1 ciutat → (1,1). En una ciutat poden haver nascut de 0 a molts → (0,n).
- Morir: un autor pot no haver mort o haver mort en 1 ciutat → (0,1). En una ciutat poden haver mort de 0 a molts → (0,n).
Resumint
No se sol usar esta notació perquè:
| En compte de... | Usarem... |
|---|---|
| ( 0 , | No res (per defecte el mínim és 0) |
| ( 1 , | La restricció d'existència: E (ho vorem més endavant) |
| , 1 ) | Triangle del rombe blanc |
| , n ) | Triangle del rombe negre |
Exercicis de connectivitat
6. Posa la connectivitat a les relacions dels exercicis anteriors.
7. Inventa't relacions de diferents tipus: diferent grau (unàries/binàries/ternàries) i diferent connectivitat (1:1 / 1:N / N:M / N:M:M...). Inventa't també algunes ocurrències.
8. Inventa't 2 entitats amb més d'una relació entre elles.
9. Posa la connectivitat a estes relacions matrimonials: com faries per a representar la relació estar_casat_pel_civil?
2.4 Entitats dèbils
Definició
Hem vist que les entitats es representen amb un rectangle. Però hi ha dos tipus d'entitats:
| Tipus | Significat | Representació |
|---|---|---|
| Entitat forta | Les seues ocurrències no necessiten estar relacionades amb ocurrències d'altres entitats per a existir. | Rectangle simple |
| Entitat dèbil | Les seues ocurrències sí que necessiten estar relacionades amb alguna ocurrència d'una altra entitat per a existir. | Doble rectangle |

Si una entitat és dèbil, es diu que té una restricció d'existència (E). A més, pot tindre una restricció d'identificació (ID).
Restricció d'existència (E)
Una entitat té una restricció d'existència respecte a una relació si cada ocurrència d'eixa entitat no pot existir sense estar relacionada amb alguna ocurrència de l'altra entitat.
Dit d'altra forma: si desapareix una ocurrència de l'entitat forta, totes les ocurrències de l'entitat dèbil que en depenen desapareixen amb ella.
Exemple
En una biblioteca, l'entitat EXEMPLARS (cada còpia física d'un llibre) depén de l'entitat LLIBRES: no pot existir un exemplar sense el llibre corresponent. Si esborrem un llibre, s'esborren tots els seus exemplars.
Representació: doble rectangle i una E en l'arc de la relació.

Restricció d'identificació (ID)
Una entitat té una restricció d'identificació respecte a una relació quan, a més de la restricció d'existència, les seues ocurrències no es poden identificar només amb la seua clau: necessiten també la clau de l'entitat forta de la qual depenen.
Exemple
Per a identificar un EXEMPLAR no basta amb el seu número d'exemplar (núm_exemplar), perquè podria haver dos exemplars número 3 de llibres diferents. Cal també el codi del LLIBRE al qual pertany: la clau d'EXEMPLARS serà (codi_llibre, núm_exemplar).
Representació: doble rectangle i ID en l'arc de la relació.

Nota
Si una entitat té una restricció d'identificació (ID), també té restricció d'existència (E). Però no al revés: pot tindre E sense tindre ID.
Exercicis d'entitats dèbils
14. En l'institut volen tindre informació de les aules (ubicació i metres quadrats), dels ordinadors (cpu, ram i dd) i en quina aula està cada ordinador. En la porta de cada aula hi ha un cartell on indica el codi de l'aula. Els ordinadors tenen una etiqueta que els identifica. Pensa com faries l'E-R en cadascun d'estos dos supòsits:
a) En l'etiqueta dels ordinadors hi ha un codi diferent a cada ordinador de l'institut.
b) En l'etiqueta dels ordinadors consta el codi de l'aula i un codi diferent a cada ordinador de l'aula.
2.5 Altres restriccions d'integritat
Les restriccions d'integritat són limitacions sobre les dades que el propi esquema E-R ja capta directament en molts casos:
| Tipus de restricció | Com es representa en l'E-R | Exemple |
|---|---|---|
| En un atribut | Clau (subratllat), domini (al costat), no nul (cercle) | El dni és clau → no es pot repetir. L'estat_civil té domini {S, C, D, V}. |
| En una relació | Connectivitat (triangle blanc/negre) | Una relació 1:N amb triangle blanc a A → un A no pot relacionar-se amb molts B. |
| En una entitat | Restriccions E i ID | Una E sobre PROFESSORS → no pot haver un professor sense departament. |
Però de vegades apareixen restriccions que no poden ser captades en l'E-R. En eixos casos s'especificaran en llenguatge natural, a continuació de l'esquema E-R, en un apartat d'«Altres restriccions».
Exemple de restricció no captable en l'E-R
«L'edat mitjana de totes les ocurrències de PERSONES ha de superar els 20 anys.»
Exercicis de restriccions
13. Suposem les entitats ALUMNES i ORDINADORS (amb els atributs que cregues convenients) i la relació assignar, que assigna ordinadors als alumnes. Un alumne només pot tindre un ordinador però un ordinador es pot assignar a diferents alumnes. Fes un esquema E-R per a cadascun dels supòsits següents:
a) No pot haver cap alumne sense ordinador.
b) No pot haver cap ordinador sense assignar.
c) Tots els alumnes han de tindre un ordinador assignat i cada ordinador ha d'estar assignat obligatòriament a un alumne almenys.