Aplicacions amb la base de dades Access
Enrera Mòdul 4: què li puc preguntar a la base de dades?  
  Pràctica
1
2
3
   
Exercicis
Exercicis
 
 

L'objectiu d'aquesta pràctica és continuar amb l'estudi de les consultes per anar-vos familiaritzant amb les anomenades consultes de selecció. Es tracta de practicar i aprendre mentre es fan exemples.

   
Desenvolupament de la pràctica
   
Pràctica

Els punts que es pretenen desenvolupar durant la segona pràctica d'aquest quart mòdul són:

   
  Tipologies bàsiques de consultes: selecció i acció
   

Tal com es va veure en la pràctica anterior, aquesta imatge mostra els diferents tipus de consultes que hi ha, les quals es resumeixen en dues varietats principals que són: de selecció i d'acció.

Les consultes de selecció no modifiquen les dades originals de les taules o de les altres consultes que teniu. Fan un filtrat de la informació i mostren allò que li demaneu.

Les consultes d'acció poden arribar a canviar les dades de les taules, afegint-ne de noves, modificant-les, esborrant-les, etc. Les modalitats, que podeu veure a la imatge, són: Consulta de actualización, Consulta de creación de tabla, Consulta de datos anexados i Consulta de eliminación.

Altres modalitats de consultes existents són: Consulta de referencias cruzadas, Consulta de buscar duplicados, Consulta de buscar no-coincidentes, Consulta de unión, etc. La següent pantalla us mostra les varietats que teniu a la vostra disposició en el moment de crear-ne de noves.

Altres consultes també es poden crear només des de la finestra de l'SQL (Standard Query Language), que és un llenguatge de programació estàndard dins de l'entorn de les bases de dades. Les consultes d'unió només es fan mitjançant l'escriptura de codi SQL.

Una consulta la podeu veure de tres formes, a les quals podeu accedir-hi des del botó : aquest botó el trobeu a la part esquerra de la barra d'eines dels formularis quan en teniu un d'obert. Si cliqueu sobre la fletxa, es desplega aquest menú:

La Vista diseño seria la que us permet crear la consulta mitjançant la visió de les taules i del ratolí, sense haver d'escriure cap mena de codi. Seria aquesta imatge.

Quan executeu la consulta, aquesta es veu en Vista hoja de datos:

I de forma automàtica, una consulta feta des de la finestra de disseny genera el codi SQL, així, en el cas concret d'aquesta consulta, el codi creat és aquest:

Aquesta animació explica cadascun dels elements que conté la finestra del disseny d'una consulta qualsevol. Observeu-la amb atenció. Veure-la.

   
  Les consultes de selecció
   
 

Ara que ja sabeu la teoria, podeu passar a fer exemples de consultes.

Per crear les consultes de selecció ho fareu des de la finestra de disseny, que és la forma més còmoda i ràpida.

Com ja s'ha dit, una consulta és una pregunta que es fa a la base de dades. Així és que ara us interessarà fer aquesta pregunta:

Quins llibres tenim a la nostra biblioteca escrits per Jacint Verdaguer?

En primer lloc, penseu quins camps intervenen en la resposta a aquesta pregunta: caldria posar el títol del llibre, i el cognom i nom de l'autor com a mínim.

On són aquests camps? Doncs el títol del llibre el teniu a la taula Llibres i es diu Títol, i els altres dos els teniu a la taula Autors i es diuen Nom i Cognoms.

Per tant, el que cal afegir al disseny són aquestes dues taules i els tres camps que heu indicat. La finestra de la consulta, quedaria així:

I en el moment de la seva execució, mitjançant el botó , obtindreu aquesta resposta:

Són tots els llibres escrits per aquest autor que teniu incorporats a la vostra base de dades. Guardeu aquesta consulta amb el nom de Consulta02. Seria interessant observar el codi SQL corresponent.

   
  Més consultes
   

 

 

 

 

Atenció !

Ara que ja sabeu la mecànica, plantejarem diferents preguntes, a les quals heu de donar resposta mitjançant la creació de consultes:

De quina editorial són els llibres escrits per Jacint Verdaguer?

Els camps que necessiteu serien: Títol (taula Llibres), Nom i Cognoms (taula Autors) i Nom_editorial (taulta Editorial).

Nota: com que aquesta consulta és molt semblant a l'anterior, podeu anar a la finestra general de les consultes i duplicar-la, és a dir, ho copieu i ho enganxeu, i donareu a la còpia el nom de Consulta3. Després, des del disseny de la consulta, fareu les modificacions que creieu necessàries.

La finestra de disseny seria semblant a aquesta:

I la resposta seria així:

Aquesta la desareu com a Consulta03.

   
  Una consulta amb moltes taules
   
 

Ara que ja heu vist el procés, només cal afegir les taules i camps que desitgeu per obtenir les respostes adequades. En aquest exemple, enllacem amb el que es va parlar en la pràctica anterior d'aquest mòdul: veure-ho.

Per tant, en aquest cas, no cal incloure cap mena de criteri perquè el que voleués veure totes les dades de la taula Llibres i les dades associaciades, però no els codis, sinó les descripcions, que són força més entenedores. També voleu que les dades es mostrin ordenades pel cognom de l'autor. La finestra de disseny hauria de ser com la de la imatge següent:

Com es pot observar, hi intervenen 6 taules. Un cop feta, la deseu amb el nom de: Consulta04.

   
  Els criteris en la consulta
   
 

Tal com heu pogut apreciar, les consultes us mostren les dades d'una sola taula o de vàries. A part d'això, poden mostrar totes les dades o fer-ne un filtrat: això es fa amb els criteris.

Aquests criteris poden variar de forma segons el tipus de camp al qual es refereixen. Si us oblideu de posar aquests signes, l' Access ho farà automàticament. Així, podeu trobar:

  • Camps tipus text van entre cometes (" "), per exemple: tema del llibre = "lle".
  • Camps tipus data van entre # #, per exemple, data de préstec = #01/01/2003#.
  • Camps numèrics no duen cap signe a part del valor, per exemple: núm. de pàg. = 120.
  • En els camps tipus lògic van en majúscula: per exemple: Prestat = Sí.

Dins dels criteris cal dir que també es poden fer comparacions interessants. Podeu provar-los dins de la base de dades Biblioteca, però no cal que els graveu. Comproveu, doncs, aquests exemples:

  • Entre #01/01/2003# Y 31/12/2003#: aquest criteri en el camp Data_préstec, us donaria per resposta tots els préstecs fets durant l'any 2003.
  • Entre #01/01/2003# Y Fecha(): en un camp Data_préstec us donaria els préstecs fets entre el primer dia de l'any 2003 i la data del dia actual (la funció fecha() dóna per resultat la data del dia en curs).
  • >120: aquest, dins d'un camp Núm_pàg del llibre, us donaria per resposta només els llibres amb més de 120 pàgines.
  • Entre 120 Y 300: en un camp Núm_pàg mostraria els llibres d'entre 120 i 300 pàgines.
  • Es nulo: aquest criteri es compleix quan el valor del registre és buit.
  • Negado es nulo: aquest és el contrari de l'anterior, quan conté alguna dada.

Cal dir que en una mateixa consulta podeu posar diversos criteris que afectin a camps diferents, i heu de pensar que primer s'executa el criteri situat més a l'esquerra.

Passeu a la part pràctica. Ara fareu les consultes de la 5 a la 7. Haureu de pensar quin criteri seria bo posar per resoldre aquestes preguntes:

  • Creareu una nova consulta i la desareu amb el nom de Consulta05. Haurà de respondre la pregunta: Quins títols de llibres --i el nom i cognoms de l'autor-- hi ha a la nostra base de dades que estiguin editats durant l'any 2002?
  • Ara una altra, que desareu amb nom de Consulta06, demana això: Els títols de llibre, nom de l'alumne i curs que hagin estat prestats a partir de final del 2003 fins a la data d'avui (Entre #31/12/2003# Y Fecha()), i que tinguin menys de 200 pàgines (<200). Per tant, aquesta consulta té dos criteris situats en camps diferents.
  • Per últim, una altra que desareu amb nom de Consulta07. D' aquells llibres prestats i que no hagin estat retornats (Negado es nulo en Data_devolució), volem veure el nom i cognom de l'alumne a qui s'ha fet el préstec.
   
 
  • Aquest apartat estableix un enllaç a la pràctica 3 d'aquest mòdul, on es continua amb les explicacions del tema de les consultes.
   
Atenció !

Nota: tot i que no ocupen gaire espai, la majoria de les vegades convé que les consultes les feu i després les esborreu. Es tracta de no omplir la finestra de moltes i moltes consultes perquè després, un cop passat un temps, ja no us recordareu de la seva existència i les tornareu a fer duplicant-les. Més endavant, estudiareu que, des dels formularis, podeu crear-les i guardar-les: serà una opció molt interessant que us mantidrà la base de dades neta d'elements innecessaris. La idea és treballar amb els formularis a la vista, i aquests faran referència a les taules, consultes, informes, etc., però sense mostrar-los.

   
   
 
Amunt