Aprenem a fer Relacions entre Taules!!!

Què és una relació entre taules?

Una relació entre dues taules és unir-les entre sí, la qual cosa queda representada gràficament mitjançant una fletxa. Per poder-ho fer, prèviament s'han de complir una sèrie de condicions:

  1. Ha d'haver-hi un camp clau creat prèviament.
  2. Que hi hagi entre les dues taules un camp comú.
  3. Aquests dos camps han de ser del mateix tipus de dades (numèric, text, etc.)
  4. Saber quina és la taula principal (costat 1) i la secundària (costat infty o varis)

Una imatge de dues taules relacionades seria:

Per a què serveixen les relacions?

Ja s'ha explicat abans els dos motius principals pels quals s'ha fet una divisió d'una taula grossa en dues de més petites: estalviar feina i espai i evitar errades d'escriptura.

Una relació serveix per poder unir dues taules que tenen un camp comú.

En l'exemple que ens toca, tal com es pot veure en la imatge de sobre, en la taula Llibres hi tenim només un codi d'editorial, així ens estalviem d'haver d'escriure cada cop que donem d'alta un nou llibre totes les dades corresponents a l'editorial (el nom i la ciutat de l'editorial, etc.), només escriurem un petit codi, el codi d'editorial. Doncs bé, la relació és la que permet que es pugui fer aquesta unió entre les dues taules que comparteixen aquest camp en comú: el Codi d'Editorial.

Tipus de relació

Entre dues taules es poden plantejar tres tipus de relació, però només una d'elles serà útil a l'hora de fer una Base de Dades correcta:

  1. Relació 1 a 1 (u a u) -No serviria en el nostre cas-
  2. Relació infty a infty (varis a varis) -Tampoc serviria-
  3. Relació 1 a infty (u a varis) -Aquesta és la que ens serveix-

Seria desitjable establir la tercera modalitat, la 1 a infty (u a varis). Per explicar aquest punt, cal raonar aquestes dues preguntes referides al nostre exemple:

  • Una Editorial concreta (Anaya per exemple) pot tenir varis llibres en la meva biblioteca? Resposta: Sí (poden ser el de Socials, el de Llengua, etc.)
  • Un Llibre (el de Llengua catalana) pot tenir vàries editorials? Resposta: No, només en té una d'editorial.

Per tant, resulta que la relació entre llibres i editorials és del tipus 1 a infty , és a dir una editorial pot tenir varis llibres: La taula Editorials serà el costat 1 i la taula Llibres serà el costat infty . Tal com es veu a la imatge d'abans.

Si les respostes haguessin estat totes dues Sí, estaríem davant d'una relació infty a infty , que caldria trencar, doncs no ens serviria: caldria convertir-les en dues relacions 1 a infty .

Com es fan les relacions entre dues taules?

Ara que ja tenim més o menys clar els conceptes de relació anirem a passar a l'acció: com es fa això?

Doncs tornem al nostre exemple, la relació entre la taula Editorials i la de Llibres abans esmentada. A continuació s'explica des del començament tot el procés:

A.- Per començar caldrà obrir el fitxer de treball mitjançant clic en aquest enllaç:

77621-practica1.mdb

Ha de tenir un aspecte semblant a:

B.- Ara caldrà localitzar l'opció del menú o el botó de la barra d'eines corresponent: hem de buscar aquest botó   en la Barra d'Eines o també ho podem fer pel menú: Herramientas | Relaciones…

C.- Des de qualsevol de les dues anteriors possibilitats arribarem a la pantalla:

D.- Farem un clic a la taula Editorials i Agregar, i repetirem amb la taula Llibres i Agregar. Després donarem a l'opció Cerrar. Obtindrem aquesta finestra:

Com es pot apreciar, cadascun dels quadres representa una taula amb tots els seus camps. Moltes vegades passa com la imatge de sobre, que no es veuen en pantalla tots els camps. Per evitar-ho, només ens hem de situar sobre d'una de les seves vores i estirar una mica per que quedi així:

E.- El pas següent és ja fer la relació. Per això cal arrossegar el camp comú del costat u (que en aquest cas és el camp anomenat Codi de la taula Editorials) i deixar-lo anar a sobre del mateix camp de la taula del costat infty (en aquest cas és el camp Editorial de la taula Llibres)

F.- Automàticament obtindrem en pantalla aquesta finestra:

En ella se'ns diu que volem relacionar el camp Codi de la taula Editorials amb el camp Editorial de la taula Llibres.

G.- Per que la relació sigui de la modalitat 1 a infty cal que marquem la casella Exigir integridad referencial. Si no es fa, la relació quedarà del tipus 1 a 1 i no ens serviria de gran cosa.

H.-Feina feta! Les dues pantalles següents mostren si hem marcat la casella d'Exigir integritat referencial o no ho hem fet:

Si volem fer més relacions, mitjançant el botonet podrem tornar a la pantalla en la que agreguem les taules.

Ara es tracta d'agregar la taula d'Autors i sobre ella establir la relació corresponent amb la taula Llibre, de tal manera que el resultat sigui com el de la imatge de sota:

I ja tenim les relacions fetes!!!Caluròs

Ara podeu practicar amb la practica següent. 

 

 

 

 

 

 

 

 

 

 

[@more@]



Aquesta entrada ha esta publicada en General. Afegeix a les adreces d'interès l'enllaç permanent.