Emprar índexs

En les pràctiques anteriors s'ha estudiat el concepte i com es fan els índexs dels camps d'una taula. Ara estudiarem com fer-ne un ús correcte a partir d'un exemple concret fent ús de la taula Alumnes del nostre exemple biblioteca_m1.accdb.

Aquesta imatge presenta tots els indexats que hi ha creats a la taula Alumnes, a la qual s'hi pot arribar per l'opció del menú Ver > Índices o mitjançant el botó

Mirant aquesta finestra es pot comentar que hi ha tres columnes d'informació:

  • La primera d'elles que té per títol Nombre del índice és la que li dóna un nom a l'index concret per diferenciar-lo de la resta. En aquest exemple en tenim 3 d'indexats fets: PrimaryKey, persona i adreça.
  • El següent concepte és el Nombre del campo que indica quin és o quins són els camps afectats per l'índex.
  • A la tercera columna apareix "Orden" que pot ser Ascendent o descendent.

Per tant, en aquest cas concret hi ha creats tres indexats diferents, de les tres modalitats que existeixen:

  • de camp clau, o PrimaryKey. Afecta al camp Codi_alumne i és un indexat d'ordre ascendent que no admet duplicats (obligat pel fet de ser un camp clau de la seva taula respectiva).
  • de camp simple. Aquest afecta al camp adreça, i és un indexat que obligatòriament ha d'admetre duplicats (no podríem tenir dos alumnes que visquessin a la mateixa adreça si no fos així)
  • de camp múltiple. Afecta, tal com es pot veure a dos camps simultàniament. Es tracta de l'índex que té nom "persona" i afecta als camps cognoms i nom. És ascendent i afecta als dos camps de forma simultània, essent camps no indexats de forma separada. Observant la imatge es pot apreciar que a la primera columna de l'esquerra, si hi ha un nom d'índex aquest serà el mateix fins que no hi hagi un altre nom a sota, en aquest cas, són dos camps afectats, però podrien ser més. Per exemple podríem fer un indexat que afectés a un primer cognom, a un segon cognom i a un nom de persona i això, tot en un sol indexat.

Si veiem la següent imatge, podem apreciar que el camp cognom no està indexat ni el camp nom tampoc, és a dir, per separat no, conjuntament sí. Per tant, l'única forma de fer indexats múltiples és entrant a la finestra dels índexs, no es pot fer des de les propietats dels camps de la part inferior de la finestra del disseny de les taules.

Als exercicis del mòdul es demanaran la realització dels índexs d'uns quants camps de les taules del fitxer d'exemple. Per realitzar-ho es recorda el procés segons cada tipus d'indexat diferent:

  • Els indexats PrimaryKey es realitzen automàticament mitjançant l'ús del botó de creació del camp clau. Aquest queda establert automàticament tal com mostra la imatge sense que s'hagi de fer res de forma manual:

  • Els indexats simples o que afecten a un sol camp, caldrà fer-los des del disseny de la taula, a la part inferior de la pantalla, i prèviament fer clic al camp que volem que afecti l'indexat, triem l'opció Indexat Sí, amb duplicats (en la majoria dels casos, doncs si triem una modalitat sense duplicats no ens deixarà repetir el contingut i això normalment és només propi del camp clau):

  • Per últim, l'indexat múltiple, estem obligats a fer-lo des de la finestra dels indexats a la qual hi arribem, tal com s'ha dit abans, des de la icona .

El procés de creació és senzill, es tracta de posar a la primera columna el nom que tindrà el nou índex, triar un camp a la segona columna i a la tercera escollir la modalitat Ascendent/Descendent.

Després, deixant buida la primera columna, a sota del nom de l'índex anterior, triar un segon camp i després un tercer… Mentre no posem un nou nom d'índex, aquest afectarà als camps aquí indicats.

A l'exemple posterior es pot apreciar un índex que afectaria a tres camps a l'hora: