Conceptes generals d'una base de dades...

42
Fixeu-vos que el nom de la base de dades no porta accents. Això no és cap errada: no és convenient posar accents, punts, guions, etc. en el nom dels fitxers, i tampoc en el nom dels objectes de la base de dades (taules, consultes, formularis, etc.). Conceptes generals d'una base de dades relacional Una base de dades Access, es troba formada, en primer lloc, per les taules. Aquestes són les que permeten emmagatzemar la informació, i constitueixen l'element inicial que formen el fitxer de base de dades. l'Access és de tipus relacional, és a dir, consta d'un nombre indeterminat de taules, les quals es troben relacionades entre si formant un conjunt estructurat: el fitxer accdb. En el nostre cas, el fitxer Distribuidors.accdb es trobarà integrat per una sèrie de taules interrelacionades entre si. La figura següent ho mostra de forma esquemàtica: en el procés de creació d'una base de dades, hi ha unes grans etapes ben diferenciades, que serien: Fase 1 o de disseny previ: aquesta seria una etapa en la qual no cal més que paper, llapis i pensar molt bé què voleu que faci la vostra base de dades. Fase 2 o de creació de l'estructura de la base de dades. Un cop heu clarificat les idees, us posareu a treballar amb l'Access: creareu les taules, amb els seus camps necessaris, i establireu les relacions entre les taules. L'estructura la tindreu feta. Fins que no es troba completa, és recomanable no passar a la següent, ja que haver de rectificar a posteriori sempre pot crear-vos molts problemes. Fase 3 o de millora: en aquesta part, es crearan les consultes, formularis, informes i macros que completaran el vostre fitxer per fer-lo més còmode i més útil per treballar. Taules: elements principals En aquest apartat tractareu les taules i els conceptes que s'hi relacionen. Per definir què és una taula, cal dir que és una estructura en forma de quadrícula que consta de files i de columnes dins de les quals s'inclou la informació. Com es creen les taules (obrim: Distribuidors 0.accdb) Un cop que ja heu après què són i perquè serveixen les taules, es tracta de saber com es fa per crear-les : Crear/Tabla Clic botó dret Posar nom a la taula a Guardar como 1

Transcript of Conceptes generals d'una base de dades...

Page 1: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Fixeu-vos que el nom de la base de dades no porta accents. Això no és cap errada: no és convenient posar accents, punts, guions, etc. en el nom dels fitxers, i tampoc en el nom dels objectes de la base de dades (taules, consultes, formularis, etc.).

Conceptes generals d'una base de dades relacional

Una base de dades Access, es troba formada, en primer lloc, per les taules. Aquestes són les que permeten emmagatzemar la informació, i constitueixen l'element inicial que formen el fitxer de base de dades.

l'Access és de tipus relacional, és a dir, consta d'un nombre indeterminat de taules, les quals es troben relacionades entre si formant un conjunt estructurat: el fitxer accdb.

En el nostre cas, el fitxer Distribuidors.accdb es trobarà integrat per una sèrie de taules interrelacionades entre si.

La figura següent ho mostra de forma esquemàtica:

 

en el procés de creació d'una base de dades, hi ha unes grans etapes ben diferenciades, que serien:

● Fase 1 o de disseny previ: aquesta seria una etapa en la qual no cal més que paper, llapis i pensar molt bé què voleu que faci la vostra base de dades.

● Fase 2 o de creació de l'estructura de la base de dades. Un cop heu clarificat les idees, us posareu a treballar amb l'Access: creareu les taules, amb els seus camps necessaris, i establireu les relacions entre les taules. L'estructura la tindreu feta. Fins que no es troba completa, és recomanable no passar a la següent, ja que haver de rectificar a posteriori sempre pot crear-vos molts problemes. 

● Fase 3 o de millora: en aquesta part, es crearan les consultes, formularis, informes i macros que completaran el vostre fitxer per fer-lo més còmode i més útil per treballar. 

Taules: elements principals En aquest apartat tractareu les taules i els conceptes que s'hi relacionen. Per definir què és una taula, cal dir que és una estructura en forma de quadrícula que consta de files i de columnes dins de les quals s'inclou la informació.

Com es creen les taules (obrim: Distribuidors 0.accdb)

Un cop que ja heu après què són i perquè serveixen les taules, es tracta de saber com es fa per crear-les :

Crear/Tabla

Clic botó dret

Posar nom a la taula a Guardar como

1  

Page 2: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

 

Activitat: Creació de les taules de la base de dades Distribuïdors 

Distribuïdors és una base de dades d'una empresa que es dedica a la distribució de tot tipus d'electrodomèstics a diferents establiments de venda al detall arreu de Catalunya.

Un cop oberta la nova base de dades Distribuïdors heu de començar a crear aquestes taules.

Ara que comenceu amb la creació de les taules, interessaria seguir, per evitar-vos problemes posteriors, les següents premisses: en els noms de les taules i dels camps inclosos, evitareu l'ús dels espais en blanc, els accents, i ho escriureu seguint l’explicat a classe: 

tbl_Productes

codi_producte nom_producte codi_proveidor preu_unitat estoc es fabrica? foto caracteristiques 

tbl_Establiments

codi_establiment nom_establiment persona_contacte adreca cp poblacio provincia telefon correu_electronic

 

tbl_Proveidors

codi_proveidor nom_proveidor persona_contacte adreca cp poblacio provincia telefon correu_electronic

 

tbl_Comandes

codi_comanda codi_establiment data_comanda data_entrega

  

 tbl_Vendes

codi_comanda codi_producte codi_venedor quantitat descompte

Els camps que ha d'incloure cadascuna de les taules són els que figuren en la llista anterior. Raona quin tipus de camp posaràs a cadascun d'ells. La següent imatge mostra quins són els tipus de camps existents d'entre els quals hauràs de triar el més adequat. Si en dubtes, escull el que creguis més adient.  Quan al final de la creació de cadascuna de les taules us demani si voleu establir un camp clau, de moment direu que no. Des del mode disseny de la taula podreu, sempre que vulgueu, canviar els noms dels camps, els tipus de camps, i també les seves propietats. Tot i que és possible, es recomana que un cop hàgiu passat a la fase de millora amb la creació dels formularis, consultes, informes, etc., es facin les mínimes modificacions possibles; així us estalviareu molts i molts problemes. Quan les relacions entre taules estiguin fetes, us impedirà fer canvis si no les trenqueu.  

Tipus de camps  l'objectiu d'aquesta activitat és conèixer els diferents tipus de camps i quin és més convenient crear en cada cas.

 

Per tant, els diferents tipus de camps que podeu triar són els que es veuen a l’esq En quins casos convé utilitzar un tipus de camp o un altre: 

 

2  

Page 3: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Fem una ràpida descripció dels diferents tipus de camps en el mateix ordre en el qual surten en el desplegable:

● Texto:

aquest és conegut també com alfanumèric. Contindrà quansevol tipus de dades, principalment text, però també aquelles xifres amb què no heu de fer cap mena de càlcul numèric. Així, exemples de camps tipus text són: DNI, CP, CODI_PRODUCTE, CODI_PROVEIDOR, TELEFON, etc. És un dels més utilitzats.

Per defecte, és de 50 caràcters, però caldrà sempre adequar-lo al seu contingut: per exemple, donar-li 50 a un camp DNI és una inutilitat que us farà ocupar espai innecessari.

● Memo:

és un camp que conté grans textos, és a dir, un camp en el qual voleu escriure molta informació. El camp tipus text pot tenir fins a 255 caràcters màxim (50 per defecte), i quan vulgueu escriure'n més, cal fer un camp Memo.

Exemples de camps Memo podrien ser: Currículum d'un empleat, Característiques tècniques d'un producte, etc.

● Número:

aquest camp està pensat per introduir xifres amb les quals després és possible fer diferents tipus de càlculs, com sumatoris, mitjanes, valor màxim i mínim, etc.

Exemples d'aquest tipus de camp serien: Unitats en estoc, Quantitat de la comanda, etc.

També hi ha molts casos en què us veureu obligats a fer un camp numèric quan és un camp relacionat amb una taula que tingui un camp comptador.

En aquest tipus de camps, la propietat Tamaño del campo és diferent, i varia entre: Byte (0 a 255), Entero (-32.768 a 32.767), Entero largo M3 - Aplicacions ofimàtiques (-2.147.483 a 2.147.483.647), Simple i Doble (aquests dos amb valors més grans). Cal dir que l'Entero largo serà un dels més utilitzats.

● Fecha/Hora:

tal com diu la paraula, contindrà dades temporals que podran ser de dia/mes/any (data) o de hora/ minut/segons (hora) i els seus formats variaran en funció d'això.

Els exemples serien: Data de naixement, Data de comanda, Hora d'entrada, Hora de sortida, etc.

● Moneda: és un camp molt semblant al numèric, però la diferència principal és que el càlcul és molt més exacte amb aquest que amb el numèric. Els exemples serien: Import del rebut, Preu d'un producte, etc.

● Autonumérico:

aquest és l'anomenat també camp comptador: és una variant automàtica de camp numèric, perquè, per cada registre nou que s'afegeix, va augmentant els seu valor en una unitat.

Cal dir que no és sempre real el nombre total de registres i el que marca el comptador, doncs si s'esborren registres, els números intermedis no es reaprofiten (sí els del final si es fa una compactació de la base de dades).

● Sí/No:

és l'anomenat camp lògic.

Aquest pot contenir només dos valors, el vertader i el fals, el sí i el no, el 0 i el - 1.

Camps exemples podrien ser: Prestat?, Pagat?

● Objeto OLE: aquest camp permet contenir fitxers com documents, elements gràfics, etc.

● Hipervínculo: aquest camp contindrà adreces de correu electrònic o adreces web 

 

3  

Page 4: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Modificar i completar l'estructura d'una taula Ara revisareu una de les taules creades en la base de dades Distribuidors i li donareu un tipus de dades adequat. Haureu de seguir aquests passos: ● Obriu la base de dades Distribuidors des de la ubicació on la vau posar 

  Ara revisareu una de les taules creades en la base de dades Distribuidors i li donareu un tipus de dades adequat

Reviseu que els camps de la taula Productes tenen aquests tipus de dades: 

Per últim, per deixar la taula acabada, establireu uns comentaris o descripcions que us poden ser útils després. Aquests comentaris es visualitzaran a la barra d'estat més endavant, en el moment en què estigueu introduint dades a la taula.  

Feu el mateix amb la resta de taules de la base de dades Distribuïdors, éa dir, modifiqueu, si creieu que cal, els tipus de dades assignats als camps i afegiu alguna descripció. 

s

   

Propietats dels camps Objectius: l'objectiu d'aquesta activitat és conèixer les propietats dels camps. 

Tipus de camp i propietats En la pantalla en mode disseny d'una taula, podeu observar que si feu clic en un o altre camp, la part baixa de la pantalla va variant. Aquesta part és la que mostra les propietats de cada camp. Segons el tipus de dades assignat a cada camp, les propietats poden variar. A continuació es fa una explicació de cadascuna d'elles per poder completar el disseny de les taules d'una forma més acurada. 

Propietat Tamaño del campo i Lugares decimales

En principi, caldria diferenciar els tipus de camps. Concretament es parlarà dels tipus text i dels numèrics.

Text: en aquest tipus de camp, s'hi poden incorporar fins a 255 caràcters, però, per defecte, seran 50. Es tracta d'ajustar al màxim la mida perquè les dades ocupin el mínim espai possible.

Numèric: en aquest cas, hi ha aquestes modalitats en funció del que ocupen i dels valors que poden contenir. La taula següent ho detalla:

El resum de tot això i el que realment ens importa saber és que normalment amb les modalitats fins a l'Entero largo en tindreu més que suficient.

La modalitat Entero largo és la que ens surt per defecte en la creació dels camps numèrics.

En els casos dels camps relacionats amb altres taules, si l'altre costat de la relació és un camp comptador, la utilització d'aquesta mida serà obligada per poder establir la relació.

En cas de treballar amb decimals, haureu d'escollir la modalitat Doble.

També hi ha la propietat de Lugares decimales, que indica les posicions decimals utilitzades per mostrar les xifres numèriques. Té dues opcions:

● Auto: configuració predeterminada, mostra els que s'han determinat a la propietat de Formato.

● 0 a 15: els dígits de l'esquerra del separador decimal es mostren tal com s'hagi especificat en la propietat Formato. 

4  

Page 5: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Propietat Formato És la propietat que configurarà com s'ha de mostrar el camp. Tal com passa en la propietat anterior, també ofereix unes variants segons el tipus de camp. A més de les predefinides, l'usuari podrà definir el seu propi format personalitzat. La següent taula mostra les diferents modalitats existents:

També hi ha la posibilitat de crear els nostres propis formats.

Així, cal dir que l'estructura d'aquest codi té quatre seccions:

● Per quan el nombre és positiu.

● Per quan és negatiu.

● Per quan el seu valor és 0.

● Per quan no conté cap valor (és buit). També cal saber que hi ha uns signes per crear els formats:

● La , (coma) s'utilitza com a separador decimal.

● El . (punt) s'utilitza com a separador de milers.

● 0 (zero) és el marcador de dígits, mostra el valor 0 si no hi ha cap valor en aquesta posició.

● # un altre marcador de dígits, mostra el valor o res si és buit.

● % multiplica el valor per 100 i afegeix el signe % al final.

Cal aclarir que alguns dels caràcters anteriors vénen fixats per la configuració del vostre ordinador, concretament els separadors decimals i de milers els determina mitjançant la configuració del Windows (configuració regional del tauler de control).

Ara ja podeu donar uns exemples personalitzats sabent totes aquestes premisses prèvies:

En els camps de tipus text, el format té dues parts: ●Quan conté text.

●Quan no conté res .

5  

Page 6: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Propietat Máscara de entrada Permet definir un format per a l'entrada de les dades en els camps, així s'aconsegueix que tota la informació continguda al camp sigui homogènia.

També permet la simplificació de l'entrada de dades, perquè omple uns caràcters automàticament i estalvia feina.

El programa Access conté una sèrie de màscares predefinides que interessaria provar per veure quines són més interessants.

Per fer-ho, des del disseny de la taula, feu clic al camp en què voleu crear la màscara, i després, cliqueu a la propietat

Máscara de entrada. El botó de la dreta del tot , us obrirà un assistent per veure les màscares que us poden interessar.

 Pag 17/220 

 

   

6  

Page 7: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Propietat Máscara de entrada Permet definir un format per a l'entrada de les dades en els camps, així s'aconsegueix que tota la informació continguda al camp sigui homogènia.

També permet la simplificació de l'entrada de dades, perquè omple uns caràcters automàticament i estalvia feina.

El programa Access conté una sèrie de màscares predefinides que interessaria provar per veure quines són més interessants.

Per fer-ho, des del disseny de la taula, feu clic al camp en què voleu crear la màscara, i després, cliqueu a la propietat  

  Máscara de entrada. El botó de la dreta del tot , us obrirà un assistent per veure les màscares que us poden interessar. 

Seria recomanable provar-les totes, són interessants i útils. Per crear màscares personalitzades cal tenir en compte una sèrie d'elements previs:

 

 

Exemples de màscares personalitzades:  

 

Propietat Título Té menys importància. Serveix per mostrar en l'encapçalament del camp un rètol diferent al nom del camp. És a dir, en el mode d'introducció de dades, es veurà el títol a sobre de la columna enlloc de veure el nom del camp. Propietat Valor predeterminado En molts casos, us serà útil que un valor sempre surti com a predeterminat en un camp. Després vosaltres podreu canviar-lo per un altre, però, si d'entrada una majoria dels registres el tenen igual, us estalviarà feina el fet que ja surti escrit.

Un exemple podria ser posar Barcelona com a població, o posar la funció =Fecha() en el de préstec d'un llibre (equival a la data del dia actual). Així, un exemple podria ser, per a la data de devolució d'un préctec: =Fecha()+30, que us donaria la data d'un mes després del dia actual.

7  

Page 8: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

 

Propietat Texto i Regla de validación Aquestes dues són bastant interessants, doncs podem posar una condició (regla de validació) i en cas que aquesta no es compleixi, que no deixi introduir les dades incorrectes en el camp i que ens avisi amb una finestra que nosaltres definim (text de validació).

Per establir la regla podeu treballar amb una sèrie d'operadors (=, <, >, &, Y, O, Como...), també amb identificadors (noms de camps, com [data d'alta]...), funcions (Fecha, Suma...), literals (100, "Barcelona", #12-01-04#...) i constants (verdadero, falso, Sí, No, Nulo...). 

 

En el cas que la condició establerta no es compleixi, caldria posar un avís. Aquest s'escriu dins del Texto de validación. Així, per al penúltim exemple dels anteriors, podríeu escriure: "Has d'escriure dates a partir del començament de l'any 2001 fins a l'actulitat!". La finestra que segueix mostra el resultat d'introduir una data errònia en el camp:  

Propietat Requerido Aquesta propietat és la que defineix l'obligatorietat o no d'introduir dades dins del camp. En algun cas ens pot interessar que no ens deixi el contingut del camp buit, i que ens obligui a escriure alguna dada per poder continuar. Indexació de camps L'indexat vol dir que l'Access faci una espècie de còpia de les dades d'una taula ordenades pel camp que vosaltres li dieu.

Així, si, per exemple, en un taula feu moltes recerques de la informació a partir del camp Codi Producte, interessaria que féssiu un indexat per a aquest camp; d'aquesta forma, les recerques seran molt més ràpides. Tampoc no en podeu abusar, perquè si poseu molts indexats, el procés de treball de la base de dades serà més lent, ja que ha de guardar les dades de les diferents ordenacions que marca cada índex.

Les possibilitats d'indexats que permet l'Access són:

Per tant, de les possiblitats de la finestra: ● No: sense cap mena d'indexació creada. ● Sí (Con duplicados): per fer un indexat c

que permeti duplicar les dades. Per exemple, pels

s

ognoms de la personade contacte. ● Sí (Sin duplicados): aquest cas no pot permetre duplicats. Per exemple, seria per un camptipus DNI. Els camps clau (Codi producte, Codi client, etc.) i els comptadors tenen aquest tipude forma obligada.  

 

  

8  

Page 9: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Establir les propietats de la taula Productes

Aplicació de tots els coneixements explicats en aquesta activitat:  

● Obriu el vostre fitxer Distribuidors.mdb i aneu al disseny de la taula Productes. Dins d'aquesta pantalla,seguiu aquests passos explicats camp a camp:

 Nom del camp Propietats a modificar

 

CODI_PRODUCTE Mida: 4

Format: majúscules

Títol: Codi producte

Indexat: Sí (sense duplicats)

NOM_PRODUCTE Títol: Nom producte

PREU_UNITAT Format: euro, amb dos decimals

Títol: Preu unitari

CODI_PROVEIDOR

Mida: 4

Títol: Codi proveïdor

ESTOC

Sense decimals

CARACTERISTIQUES Títol: Característiques

● Apliqueu als camps de la resta de taules les propietats que considereu adequades.

Camps clau Objectius: l'objectiu d'aquesta activitat és conèixer el concepte de camp clau d'una taula.

Indexació dels camps d'una taula

Si voleu que en una taula hi hagi algun camp que mai es pugui repetir en una de les seves dades, podeu convertir-lo en indexat sí, sense duplicats.

Exemples d'aquest tipus de camps, podrien ser: un DNI en una taula de persones, un codi d'alumne en una taula d'alumnes, un codi de llibre en una taula de llibres, i qualsevol camp tipus comptador.

Això és un aspecte que us interessarà, perquè quan voleu diferenciar les dades d'una persona de totes les altres, sempre caldrà tenir un concepte que sigui realment únic i irrepetible: d'aquesta forma la base de dades tindrà una integritat.

En definitiva, caldria dir que la forma de no repetir els registres és identificar-los per un camp irrepetible, el qual sempre tindrà un indexat sense admetre duplicats: en el moment que vosaltres doneu d'alta un nou registre, si per equivocació voleu donar-li el mateix codi que un que ja existeix prèviament, l'Access us avisarà que hi ha repetició i us impedirà donar d'alta el registre que infringeixi aquesta premissa.

Quan establiu un camp del tipus autonumèric o comptador, automàticament es crea amb un indexat del tipus sense duplicats.

 

   

9  

Page 10: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

El camp clau, què és i per a què serveix 

En la gran majoria de les taules que creeu amb l'Access us interessarà tenir un camp que no es repeteixi mai, per evitar errades.

Així, si teniu un mateix treballador donat d'alta dues vegades, si teniu un mateix producte, un

mateix client, etc., això no us portarà més que a cometre errades de tot tipus.

En aquest punt cal fer dues precisions:

1. No és obligatori tenir el camp clau en una taula, perquè hi ha vegades que no l'utilitzeu per res.

2. També cal aclarir que, en alguns casos, el camp clau pot ser de més d'un camp alhora. Serien irrepetibles les combinacions de tots dos, però per separat es podrien repetir.

Un ús força comú d'això es fa a les taules que es creen per establir una relació n a n; normalment es fan dos camps que són clau tots dos alhora.

El botó que us permet accedir-hi és aquest: , i un cop establert, aquest mateix símbol es podrà veure a la pantalla del disseny de la taula a la part esquerra del nom del camp, tal com es pot apreciar en aquesta imatge

 

 

Creació dels camps clau La llista dels camps que cal crear com a clau dins del fitxer Distribuidors de cadascuna de les taules seria aquesta: 

 

 

 

   

10  

Page 11: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Relacionar taules 

Objectius: l'objectiu d'aquesta activitat és conèixer el concepte de relacions entre taules i els tipus de relacions existents.

Introducció a les relacions: conceptes previs Entendre el concepte de relació entre taules és fonamental per comprendre la filosofia del programa Access.

La tendència inicial de qualsevol usuari quan fa el disseny d'una base de dades és crear poques taules i cadascuna d'elles amb un nombre excessiu de camps. L'usuari que desconeix el funcionament de les bases de dades relacionals així ja queda satisfet.

Però si ho penseu bé, aquesta forma de fer les coses us aporta una comoditat inicial i efímera, i per contra, una incomoditat permanent a partir del moment que comenceu a treballar amb la base de dades. Per tant, cal que penseu una mica abans de posar-vos a treballar.

El motiu de fer diverses taules enlloc de fer-ne una de grossa és que la base de dades resulta, d'aquesta forma, molt més àgil i manipulable.

Penseu en un exemple d'una base de dades on les dades dels proveïdors, dels client, dels productes, etc., es trobessin en una mateixa taula: la feina de donar d'alta un nou registre seria interminable, duplicaríeu molta informació, ocuparíeu molt d'espai innecessari i inútil, i també podríeu cometre moltes errades d'escriptura.

Vegeu-ho amb un altre exemple:

Esteu donant d'alta dades personals, per exemple, de clients d'un banc. Si us interessa tenir apuntat també el nombre d'habitants que té la població dels vostres clients (de cara a campanyes de marketing, per exemple), us podeu adonar del següent problema: la dada del nombre d'habitants la repetiu cada vegada que escriviu el nom de la població del client.

Això us crea una sèrie de problemes afegits:

● Us podeu equivocar a l'hora d'entrar les dades.

● Esteu ocupant un espai innecessari i la informació és redundant.

● Si teniu una taula amb molts registres, introduir aquesta dada seria molt tediós.

● Si al cap d'uns quants anys hi ha un canvi del cens, seria molt complicat fer els canvis a tots els registres.

Solucio:

Crear dues taules, una de dades de la persona i un altra de dades de les poblacions, i després relacionarles totes dues mitjançant un camp comú Codi de ciutat.

D'aquesta forma, senzilla, eviteu tots els desavantatges abans esmentats. D'aquesta manera, us estalvieu haver de donar d'alta un mateix concepte llarg (un nom, una descripció, etc.) moltes vegades i substituir-lo per un concepte curt (un codi) que us farà estalviar espai i també evitar errades en la base de dades. Què necessiteu per fer les relacions Per establir les relacions necessiteu tenir dues taules amb un camp compartit. Aquest camp no és una condició indispensable que tingui el mateix nom, això no importa, el que sí realment és necessari és que tingui dades del mateix tipus.

De totes maneres, el fet que els camps que s'han de relacionar tinguin el mateix nom a les dues taules, us pot facilitar la feina.

Així, a l'hora d'establir les relacions podreu jugar amb aquest tipus de camps:

● Text amb text

● Numèric amb numèric

● Autonumèric amb numèric

Normalment els camps dels altres tipus no són correctes per establir les relacions, ja que no són camps claus de les seves taules respectives, sinó que són els que afegeixen informació addicional.

Un altre aspecte que cal destacar és que la mida dels camps també ha de ser igual. En els camps de tipus numèric relacionats amb camps de tipus comptador, cal que, com a mínim, la seva mida sigui Entero largo. En cas contrari, no podreu establir la relació.

També necessiteu tenir un camp sense possibilitat de duplicació en la taula d'on parteix relació, és a dir, tenir un camp clau . Si no és així, la relació serà inconsistent i provocarà errades. 

11  

Page 12: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Els tipus de relacions

Un cop vista la necessitat de crear relacions entre taules, repasseu totes les possiblitats que us ofereix el programa Access.

Un cop ja teniu almenys dues taules, heu de pensar que entre elles es podrien arribar a establir fins a tres tipus diferents de relacions, de les quals n'haureu de triar una sola, que haurà de ser la més apropiada: 

 

Abans de saber quin tipus de relació hi pot haver entre dues taules, cal mirar de fer el raonament des de la primera a la segona, i després invertir l'ordre i fer-ho des de la segona a la primera. Així, segons les respostes que obtingueu, hi haurà aquestes modalitats de relacions: 

● La primera modalitat, la 1 a n, és la que s'anomena d'un a varis o amb integritat referencial.

Es pot afirmar que és la forma ideal de fer les relacions i a la que heu de tendir sempre que es pugui.

Un exemple de relació 1 a n seria entre la taula Proveidors i Productes, perquè un producte pot tenir un proveïdor, i un proveïdor pot tenir diversos productes.

Això vol dir que és una relació 1 a n (ó n a 1, que seria el mateix). Si es donés el cas que un producte pot tenir diversos proveïdors alhora, estaríeu en aquest cas amb una relació n a n.

● La segona modalitat, la 1 a 1, apuntada s'anomena d'u a u.

Es dóna quan voleu partir una taula per separar algunes dades que tenen entre elles certes característiques comunes i, d'aquesta manera, deixaríeu les taules més petites i manejables.

Un exemple podria ser una taula amb dades comercials d'un client i una segona amb dades bancàries: un client té unes dades bancàries i, alhora, unes dades comercials.

● La tercera modalitat, la n a n, es l'anomenada varis a varis.

Aquest tipus de relació s'estableix mitjançant la creació d'una taula intermèdia entre les dues inicials i s'establiran dues relacions 1 a n entre les dues taules inicials dels extrems i la central de nova creació.

Un exemple d'això podria ser una relació entre una taula de productes i una taula de comandes: un mateix producte ha pogut formar part de diverses comandes i una comanda pot tenir diversos productes.

Aquest raonament us dóna una relació n a n. 

   

Com es fa una relació Anem a establir una relació entre dues taules.

Per fer l'explicació utilitzareu el vostre exemple dels Distribuïdors, i concretament ho fareu entre les taules Proveidors i Productes.

El punt de partida serà localitzar el botó de relacions:  fem clic al botó

I fem clic a mostrar tabla (hi ha vàries possibilitats)

 

   

12  

Page 13: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

  A partir d'aquí, escolliu les taules amb què vulgueu establir les relacions, en el nostre cas Proveidors i Productes: seleccioneu i premeu Agregar (un doble clic sobre el nom de la taula fa el mateix efecte).

Un cop incorporades totes dues taules a la finestra de relacions, tindreu un quadre per a cadascuna. En les dues imatges següents, a la part superior es veu tal com queden les taules acabades d'agregar a la finestra de relacions.

Seria interessant arrossegar per les vores per poder conèixer tots els camps. La segona imatge mostra les taules amb tots els camps a la vista: d'aquesta forma treballareu més còmodament. 

 

Raonament de la relació:

per establir la relació correctament, heu de pensar que un producte no té més que un proveïdor, i un proveïdor té, o pot tenir diversos productes possibles a la venda, obteniu com a conclusió que hi ha una relació 1 a n.

És a dir, un proveïdor (costat 1) pot tenir diversos productes (costat n) i no al contrari.

Per tant, per poder establir la relació, caldrà que feu clic al camp CODI_PROVEIDOR de la taula Proveidors i l'arrossegueu fins a situar-lo a sobre del camp CODI_PROVEIDOR de la taula Productes. Un cop fet això, obtindreu aquesta finestra: 

 

Ara haureu de seleccionar la casella Exigir integridad referencial perquè el tipus de relació sigui de la modalitat 1 a n. Quan la marqueu, la finestra quedarà així: 

Ara només us faltarà clicar al botó Crear i la relació ja serà del tipus 1 a n. El procés s'ha acabat aquí. Per últim, un cop feta la relació, el resultat visual que obtindreu serà aquest: 

 

Ja heu creat una relació 1 a n entre les dues taules. Només us queda desar la feina feta i tancar la finestra de relacions.  

   

13  

Page 14: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Ampliació de les opcions de la finestra de relacions Un cop activat el botó Exigir integridad referencial, també podreu seleccionar les dues caselles de sota, i d'aquesta forma, fer que els camps relacionats s'actualitzin i s'esborrin automàticament els uns amb els altres.

   

Establiment de les relacions en la base de dades Distribuidors En aquesta part més pràctica, caldria establir les relacions entre totes les taules de la vostra base de dades Distribuidors, tal com s'ha explicat més amunt.

De cara a fer una feina més uniforme, s'han posat tots els noms de les taules i també dels camps en majúscules i s'han evitat els espais en blanc i els accents per estalviar-vos possibles problemes posteriors.

Així, la feina que es faci ha de tenir aquest aspecte: 

 

Abans de mirar la imatge de sota, caldria que féssiu una reflexió per veure quin tipus de relació tenen les taules abans esmentades.

Un cop fet el raonament, en la imatge inferior podreu comprovar la solució a les relacions i com quedaria la finestra un cop fetes totes elles.

El resultat final de totes les relacions hauria de ser semblant a aquest: 

 

 

Empleneu uns quants registres en cadascuna de les taules de la base de dades Distribuidors.mdb.

 

   

14  

Page 15: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

 

 

 

 

 

 

   

15  

Page 16: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Consultes Objectius: l'objectiu d'aquesta activitat és introduir el concepte de consulta i treballar amb uns quants exemples. Fitxer Neptu.mdb

En aquesta activitat treballarem amb la base de dades Neptú, que conté un extracte de les taules de la base de dades NEPTUNO.mdb que incorpora l'Access i que es pot trobar a la carpeta C:\Archivos de programa\ icrosoft Office\Office\Samples. M

Obriu el fitxer Neptu.mdb. En el procés de creació d'una base de dades, introduir la informació sol resultar una feina bastant pesada i rei rativa. te

Aquí us heu estalviat aquest pas: ara ja podreu començar a treballar i a veure què s'hi pot fer des de l'Access. Concepte de consulta Una consulta és una pregunta que feu a la base de dades. Aquesta pregunta us genera una resposta que la veieu en forma d'una estructura de taula. Si guardeu la consulta, només guardeu la pregunta, però no la taula resposta.

Per tant, les consultes no ocupen gaire espai a la vostra base de dades.

Mitjançant una consulta vosaltres podreu obtenir dades d'una sola taula o de vàries, de tots els seus camps o de només una part.

Es pot dir que hi ha dos grans grups de consultes:

les de selecció i les d'acció.

Les primeres fan filtrats de la informació o uneixen dades provinents de més d'una taula.

Les segones poden generar accions sobre les dades, esborrar, modificar o fins i tot crear taules noves.

Per tant, les consultes són una eina molt potent.

En la finestra de disseny de les consultes podeu veure quines són les tipologies que existeixen. Serien les que representen aquestes imatges:

       

16  

Page 17: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Farem exercicis amb el fitxer Neptu.accdb 

 

Clic a Diseño de consulta

Ara es tracta d'escollir els camps que vulgueu que es mostrin a la resposta de la consulta, passant-los des de la taula superior als espais inferiors, on diu Campo. Ho podeu fer de diferents formes: 1. Fent doble clic al nom del camp, a la taula. 2. Arrossegant el camp de la taula a les caselles de sota. 3. Fent clic a la part inferior en el quadre de text de la línia Campo.

Amb això li heu dit que voleu veure les dades només del IdClient, del NomEmpresa, del Pais, del Telefon i del Fax, però només d'aquells que el criteri equival a Alemanya, és a dir, només els clients d'Alemanya.

La pregunta està feta, ara mitjançant el

botó executeu la consulta i obteniu

aquest resultat:

La desareu mitjançant el botó

17  

Page 18: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Consultes de selecció Objectius:

l'objectiu d'aquesta activitat és 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.

Tipologies bàsiques de consultes: selecció i 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, són: Consulta de actualización, Consulta de creación de tabla, Consulta de datos anexados i Consulta de eliminación.

Una altra modalitats de consulta, que no modifica les dades de les taules, és la Consulta de referencias cruzadas.

nselecciLes co sultes d’acció són consultes de

ó en origen….

Una cons rmes, a les quals podeu accedir-hi des del b

ulta la podeu veure de tres footó ver:

Si cliqueu sobre la fletxa, es desplega aquest menú:

La Vista diseño seria la qsense haver d'escriure cap mena d

ue us permet crear la consulta mitjançant la visió de les taules i del ratolí, e codi.

Seria aquesta imatge.

Qd

uan executeu la consulta, aquesta es veu en Vista hoja de atos:

18  

Page 19: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

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:

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 de selecció

Per crear les consultes de selecció ho fareu des de la finestra de disseny:

Consulta:

● Quins productes tenim a la base de dades Neptú procedents de França?

En primer lloc, penseu quins camps intervenen en la resposta a aquesta pregunta: caldria posar el IdProducte, el NomProducte i el país de procedència.

On són aquests camps? Doncs el IdProducte i el NomProducte el teniu a la taula Productes i el país de procedència és el camp Pais de la taula Proveidors.

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

I fem clic a per veure’n el resultat i surt

Deseu aquesta consulta amb el nom de qry_Productes_de_France

Més consultes

● Codi del producte, nom del producte i nom del proveïdor dels productes de la categoria 6. Deseu aquesta consulta amb el nom que cregueu correcte

● Codi, nom, telèfon i fax del proveïdors del Canadà. Deseu aquesta consulta amb el nom que cregueu correcte

● Codi de comanda i nom del client de les comandes corresponents al venedor 9. Ordeneu els registres en ordre ascendent pel camp IdComanda. Deseu aquesta consulta amb el nom que cregueu correcte

19  

Page 20: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Una consulta amb vàries taules

Ara que ja heu vist el procés, només cal afegir les taules i camps que desitgeu per obtenir les

respostes adequades.

Exemple de consulta amb diverses taules:

Codi i nom dels productes que venem al client Alfreds Futterkiste. Els productes s'han de mostrar en ordre ascendent.

El disseny de la consulta seria com el que es veu a la imatge següent:

Fixeu-vos que només hem seleccionat els camps IdProducte i NomProducte de la taula Productes i el camp NomEmpresa de la taula Clients.

Quina és la raó perquè també apareguin les taules Comandes i Detall de comandes? Si proveu a seleccionar només les taules Productes i Clients, podreu observar que entre aquestes dues taules no hi ha relació i, en aquest cas, la resposta a la consulta seria incorrecta.

La resposta només serà correcta si les taules que formen part de la consulta estan relacionades. Per aquest motiu també apareixen lestaules Comandes i Detall de comandes, ja que a través seu s'estableix la relació entre Productes i Clients. Fan la funció de connectores.

La resposta a la consulta plantejada seria la que es mostra a la imatge següent:

Deseu aquesta consulta amb el nom que cregueu correcte

20  

Page 21: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Les properes pàgines tracten d’alguns aspectes de les consultes. Són uns apunts diferents dels anteriors. 

Part 1: Consultes en general 

Part 2: Consultes d’acció 

 

Page 22: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

22

Regles útils a l'hora de posar noms als elements d'una base de dades

Taules: tblClients Consultes qryClients_que_no_han_pagat Formularis frmEntrada_dades Informes rptDespeses_mes_de_gener

TIPUS DE CONSULTES

1. Consultas de selección: Obtenen dades a partir de taules 2. Consultas de acción: MODIFIQUEN REGISTRES O TAULES 3. Consultas específicas de SQL. (NO LES VEUREM)

Crear una consulta.

Para crear una consulta: - hacer clic en el botón Diseño de Consulta en la pestaña Crear (el asistente no el farem servir) - seleccionar tabla/clic a agregar

Aspectes:

Campo: Camp que es vol que surti al resultat o al que es vol aplicar un criteri de selecció Tabla: Ja ho posa l'Access (taula a la que pertany el camp) Orden: Desplegable: ordre en que es vol que surtin les dades del camp Mostrar: Si no està seleccionat, aquest camp no sortirà en el resultat de la consulta Criterios: FONAMENTAL: determina quins registres es volen obtenir amb la consulta Añadir campos: Per afegir camps a la consulta, es seleccionen amb el ratolí i s'arrossega a la part de baix, a la columna lliure

- Los campos calculados son campos obtenidos del resultado de una expresión o de una función.

- Encabezados de columna: es pot canviar, però no ho farem servir

- Cambiar el orden de los campos: es selecciona la columna i s'arrossega a on es vulgui

Page 23: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

23

Ejecutar la consulta: es fa clic a EJECUTAR

NOTA:

Si modificamos algún dato de los que aparecen en la consulta ejecutada estaremos modificando el dato en la tabla !!!!!

CRITERIS D'UNA CONSULTA

Es posen a la celda CRITERIOS tenint en compte que: 1. Criteris a diferents columnes però a la mateixa fila equivalen a Y (s'han de donar les dues condicions alhora) selecciona els registres que el nombre és tramadol i són del laboratori pharmagen

2. Criteris a diferents columnes i a diferent fila equivalen a O (s'han de donar les dues condicions de manera independent) selecciona registres que tenen el nombre tramadol (encara que no siguin del laboratori pharmagen) i els que són del laboratori pharmagen (encara que no siguin tramadol)

Page 24: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

24

Text Comodins

Yor* would find York, Yorkshire and Yorktown but not New York. Mar? would find Mark but not Mario, Martin or Omar. F*d would find Fred and Ferdinand but not Frederick.

<"N" would find all entries beginning with a letter lower than the letter N in the alphabet. In other words, all entries starting with the letters A - M.>"F" And <"H" would find all entries beginning with the letters F and G.

Números Es solen usar els operadors <X finds values less than X. >X finds vales greater than X >=X finds values greater than or equal to X <>X finds vales not equal to X

Dates Funcionen com números però... <#1/1/98# finds dates earlier than 1 January 1998 =#27-Sep-50# finds dates equal to 27 September 1950 Between #5/7/98# And #10/7/98# finds dates no earlier than 5 July 1998 and no later than 10 July 1998

Page 25: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

25

Criteris excloents Not "text" finds all records except those matching the specified text. Not Like "X*" finds all records except those starting with the specified letter (or string of text).

CAMPS BUITS

Page 26: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Consultes per paràmetres 

Les consultes vistes només serveixen per als criteris definits en elles.  

A vegades ens interessa poder definir els detalls del criteri al moment d’executar la consulta sense haver de modificar –la al mode de disseny. 

En les consultes per paràmetres, quan s’executa la consulta (i pot ser una consulta de selecció o una de qualsevol tipus dels vistos), Access et presenta un quadre de diàleg demanant‐te el criteri sobre el que vols la consulta. Pots tenirs varis paràmetres per consulta. 

Com es fa  

Enlloc d’introduir el criteri al requadre del criteri, introdueix algun text entre square brackets (claudàtors) ([ ]). 

 

El text que posis apareixerà com un prompt (al quadre de diàleg) de manera que ha de ser entenedor per l’usuari. En aquest ex li demanarà a l’usuari el nom de la ciutat dels registres que cerca  The text that the user types will be used as the criteria for that particular field.  El quadre de diàleg mostra això:  

Si l’usuari tecleja London, la consulta retornar

à tots els registres que contenen London al camp Town  

Usant Multiples Paràmetres: 

Pots posar un paràmetre quasi a tot arreu on podries posar un criteri.  manessin dues dates a 

l’interval de temps, introdueix dos prompts entre 

Per exemple, suposant que volguessis que en executar la consulta es del’usuari per definir un interval de temps:  Enlloc de teclejar les dates incial i final de corchetes (claudàtors, square bracket), com es mostra a la imatge  

 

La consulta retornarà els  

 

registres amb valors entre1 November 1998 ‐ 30 November 1998 al campInvoice Date 

1  

Page 27: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

 

A la imatge es veuen els quadres que veurà l’usuari. 

Es poden usar tants paràmetres com es vulgui i n tants camps com calgui. Els quadres de diàleg aniran apareixent  en el mateix ordre que tenen a la quadrícula de disseny (QBE grid.)

 

Combining Parameters with Wildcards… Les consultes accepten comodins (wildcards), ex A*, ex A?? ; això permet molta flexibilitat. 

Es poden combinar wildcards ambparàmetres: 

Quan no es sap exactament el que es busca (ex. No estas segur de si és amoxicilina o clamoxicilina etc) podries usar paràmetres: 

I els criteris a escriure al disseny podrien ser : 

Como [tecleja el que cerques] & "*" 

Como "*"  &  [tecleja el que cerques]  

O, amb dos wildcards:  

   Como  "*" & [tecleja el que cerques] & "*" 

 

     Como  [Which Last Name] & "*"  …crea un prompt I l’usuari pot entrar la primera lletra o la sèrie de lletres dels noms que vol veure  

 

 

L’usuari ha introduït “gr”, i la consulta ha retornat els registres que tenien el text gr al camp LastName  com a primeres dues lletres: 

2  

Page 28: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Example 2. Using two wildcards   

 El paràmetre 

    Como "*" & [Which Last Name] & "*" 

origina un quadre de diàleg (prompt) al que l’usuari pot introduir una lletra o cadena de lletres que es puguin trobar en qualsevol punt del text que cerca, en aquest cas, noms 

   L’Usuari ha introduit “en” i la consulta ha retornat aquells registres que al camp LastName contenien les lletres en juntes en qualsevol punt del camp, com es veu a la imatge 

 

 

 

 

   

3  

Page 29: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Get Creative!  

 

Alguns exemples... 

Trobar els registres d’un any o mes conté dates concret en un camp que   

Suposem que tens un camp InvoiceDate que co é una sèrie de dates a un interval de varis anys. El Criteri:  

Year([InvoiceDate])=[Choose a year] 

crearà un prompt en que que l’usuari instroduirà un any (ex 1998) si vol obtenir tots els ny 

nt

 

registres d’aquest a

Si prefereixes veure els registres per a uns mesos específics: 

 from 1‐12]) 

tén o pots posar Enero, cal posar 1) 

  Month([InvoiceDate])=[Choose a month

Fixa’t que el prompt li diu a l’usuari que introdueixi un número per un mes (Access no enels noms dels mesos, n

Obtenint registres d’un mes i any concrets d’una sèrie de dades 

onth( [InvoiceDate])=[Choose a year] 

Criteri més específic: 

M [InvoiceDate])=[Choose a month from 1‐12] AndYear(

Et mostrarà dos quadres de diàleg, el primer et demanarà el mes i el segon l’any 

Creant una llista de registres amb les dades dels darrers x dies 

t, com per ex els darrers 30 

s dels darrers 30 dies 

Si vols obtenir els invoices (factures) d’un perìode de temps recendies: 

  >Date()‐[The last how many days?] 

Significa aviu menys X dies (els que posis). L’usuari tecleja 30 obtindrà els registre

4  

Page 30: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

What about variable calculations? També pots incloure paràmetres a un camp calculat 

P ex, tens una sèrie de factures amb un camp TotalGoods i et cal calcular el descompte (o l’IVA  el que  (ex una pujada de l’IVA). Et cal un camp calculat 

 

Discount: [TotalGoods]*25/100 

 el signe %, cosa que sí que feia Excel) , pots 

o  sigui) que pot canviar amb el tempsque et demani el descompte: 

Enlloc de

Que sempre et calcularia el 25% (acess no reconeixusar paràmetres que et demani quin % cal aplicar: 

Discount: [TotalGoods]*[What discount rate ‐ percent]/100 

 

Asking the Questions in the Right Order Quan use ulta, l’usuari veu els prompts en el mateix ordre 

Si vols que apareguin en un altre  a Paràmetros 

(imatge)  i 

A la columna Paràmetro introduiex el prompt exactament 

 

s posa‐

rdre e apareguin 

 

s més d’un paràmetre a una consque tenen els camps a la QBD, llegit d’esquerra a dreta 

ordre, fex clic

igual que com estava teclejat aldisseny de la consulta. 

A la columna Tipo de datohi‐l 

Ordena els paràmetres en l’oque vols qu

Exemple: 

 

Si n rament, els  est  a dr a la QBD. Primer preDe

  

o ho has especificat alt prompts aniran apareixen segonsan, d’esqguntarà  el Name i després el partment 

If, however, you make use of the Query Parameters window you can choose the order of the prompts. In this example the parameters have been arranged  user is asked for a Department first and then a Name. 

 in a different order so that the

5  

Page 31: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

 

Dos and Don'ts for Parameter Queries 

 

Prompts mustn't match field names When you are designing a parameter query, make sure that the prompt is not exactly the same as one of the field names. You might be tempted to enter the parameter [LastName] to prompt the user to enter a name into the dialog box for the LastName field.  

This won't do! Because Access uses field names in square brackets for calculations in queries, rameter and will not appear as a prompt. If you really 

 a simple solution is to turn it into a question by 

the prompt dialog box, which amounts to about 40 to t you say.  

your entry will not be recognised as a pawant to use the name of the field as a prompt,adding a question mark… [LastName?]. 

Don't use illegal characters You can type just about anything for the prompt, but you mustn't use the period (.) exclamation mark (!) square brackets ([])or the ampersand (&), everything else is OK. 

Don't write too much!  text in You are only allowed one line of

50 characters depending on wha

Anything extra just gets cut off. Check your work! 

  

6  

Page 32: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Les expressions a l'Access

En l'Access una expressió és una ordre amb una sintaxi determinada que serveix per a la realització de càlculs.  Són necessàries en moltes de les operacions que permet l'Access com ara la definició de propietats dels camps, les consultes, els formularis, els informes i les macros.  

Les expressions es poden introduir manualment o utilitzant el Generador d'expressions que incorpora l'Access.  

Una expressió pot incloure els elements següents:  

• Operadors: la seva missió és fer operacions entre diferents valors.  • Identificadors: són les denominacions per les quals l'Access coneix els diferents objectes que pot tenir una base de dades, com ara taules, consultes, formularis, informes, camps, controls i propietats.  • Funcions: són petites instruccions que fan operacions complexes i retornen el resultat d'aquestes operacions.  • Literals: són dades (text, números o dates) que es tracten exactament com s'han escrit.  

Normes per a la introducció d'expressions

• Els noms de camps, les taules, consultes, formularis o controls ha d'anar sempre entre claudàtors. Exemple: [CODI_CLIENT].  • Les dates s'han d'introduir entre coixinets. Exemple: #31/12/02#.  • El text s'ha d'escriure entre cometes: Exemple: "Barcelona".  • Els nombres no necessiten cap caràcter: Exemple: 20. Les expressions dels controls calculats han d'anar sempre precedides del símbol =.  

Comodins que poden incloure les expressions

?   Substitueix un caràcter.  #   Substitueix un caràcter però només si es tracta d'un nombre.  * S  ubstitueix un conjunt de caràcters.  

Operadors

Operadors aritmètics    +   –   *   /  

Operadors de comparació ‐ També es poden utilitzar en cadenes alfanumèriques.   <   <=   >   >=   <>   =   COMO (Compara cadenes que inclouen comodins. Exemple: COMO "C*". ) 

Operadors de concatenació  

Page 33: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

&   Exemple: [cognom1]&" "&[cognom2]&", "&[nom]  Operad lògic

 [categoria]="1030" Y [sexe]="D"  ="1040"  

Altres o

ENTRE...Y...   Determina si el valor de l'expressió es troba dins d'un rang de 

Exemple:   ()‐365.  ∙la.  

 

ors  s  Y Exemple:O Exemple: [categoria]= "1030" O [categoria]NEGADO Exemple: [categoria]= NEGADO "1030"  peradors  

valors especificat.  ENTRE Fecha() Y Fecha

ES NULO   Determina si una expressió és nulExemple: =ES NULO. Pàgina  

 

 

  

 

   

Page 34: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

  

FUNCIONES

Las funciones son fórmulas que los programas traen incorporadas. Access dispone de un gran número de funciones ya definidas, que permiten realizar las operaciones más comunes.  

Es frecuente que las funciones actúen sobre datos almacenados en campos, por lo que el nombre de éstos debe especificarse como argumento de la función. 

  

Page 35: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Microsoft Access 2007

Pág. 97

Algunas de las funciones en Access son: Funciones matemáticas: Función: Acción: ABS(número) Calcula el valor absoluto de un número. Ent(número) Devuelve el número entero menor más próximo al

indicado. Signo(número) Devuelve el valor del signo del número. Raíz2(número) Calcula la raíz cuadrada de un número.

Funciones estadísticas: Función: Acción: Cuenta(expresión) Calcula el número de registros no vacíos para un campo. Suma(expresión) Calcula la suma de los valores de un campo. Máx(expresión) Devuelve el valor máximo de un campo. Mín(expresión) Devuelve el valor mínimo de un campo. Promedio(expresión) Calcula el valor medio de los valores de un campo.

Funciones de Fecha y hora: Función: Acción: Ahora() Devuelve la fecha y hora actuales. Fecha() Devuelve la fecha actual. HoraActual() Devuelve la hora actual. Año(número) Devuelve el año de la fecha correspondiente. Mes(número) Devuelve el número del mes de la fecha correspondiente. Día(número) Devuelve el día del mes de la fecha correspondiente. DíaSemana(número) Devuelve el día de la semana de la fecha correspondiente

al número. Funciones de Texto: Función: Acción: Longitud(expresiónCadena) Devuelve el número de caracteres correspondientes a

una expresión. Der(expresiónCadena;n) Extrae los n últimos caracteres de una expresión. Izq(expresiónCadena;n) Extrae los n primeros caracteres de una expresión. Medio(expresiónCadena;pos;n) Extrae los n caracteres de una expresión, que estén

situados a partir de la posición que se indique. Mayús(expresiónCadena) Convierte los caracteres de la cadena a mayúsculas. Minús(expresiónCadena) Convierte los caracteres de la cadena a minúsculas.

Page 36: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Microsoft Access 2007

Pág. 98

Funciones Financieras: Función: Acción: Pago(tasa;nper;va;vf;vence) Calcula la cantidad de dinero que debe

pagarse por un crédito. Interés(tasa;periodo;nper;va;vf;vence) Devuelve el interés correspondiente a uno

de los pagos del crédito. Amortiz(costo;recuperación;duración;periodo) Calcula la amortización de un bien en un

periodo. Tasa(nper;pago;va;vf;vence;estimación) Devuelve la tasa de interés

correspondiente a un crédito.

EL GENERADOR DE EXPRESIONES

Existe un generador de expresiones que permite al usuario crear expresiones complejas de

forma sencilla. Puede ser llamado desde casi todos los sitios en los que es posible escribir expresiones,

como por ejemplo en una propiedad de un campo en la vista diseño de la tabla, en el criterio en la cuadrícula QBE de una consulta, en la expresión de un campo calculado, en la ventana de diseño de una macro, etc.

Algunos métodos para ejecutar el Generador de expresiones son:

• Pulsar con el botón derecho del ratón sobre el lugar donde queremos generar la

expresión, y en el menú contextual seleccionar la opción • Pulsar el botón derecho del ratón en el campo donde deseemos utilizar el

generador de expresiones y seleccionar el comando (ver figura 7-23)

Page 37: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

CONSULTES D’ACCIÓ Las consultas de acción son consultas que permiten realizar cambios en los datos almacenados en una tabla.  

Con estas consultas podemos  

• crear una nueva tabla a partir de los registros de otra,  

• modificar los datos almacenados,  

• insertar nuevos registros o  

• eliminar registros.  

En todos los casos antes de hacer efectiva la modificación sale un cuadro de diálogo para confirmar la operación dándonos así la oportunidad de cancelarla.  

• Consultas de creación de tabla.  

• Consultas de actualización. 

• Consulta de datos anexados. 

• Consulta de eliminación  

   

Tips:  

 

Per no mostrar duplicats a una consulta o per fer una consulta que no mostri els duplicats:  

Valores únicos SI Par a mostrar els valors superiors: escollir 

i moltes altres possibilitats… 

 

Page 38: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Recorda, quan obris l'ACCESS, habilitar...

Consultas de creación de tabla.

Las consultas de creación de tabla son consultas que almacenan en una nueva tabla el resulta de una consulta de selección.

Diseñamos la consulta como una consulta de selección normal de tal forma que en el resultado de esa consulta aparezcan exactamente los registros que queremos guardar en la nueva tabla. Hacemos clic en el botón Crear Tabla de la pestaña Diseño:

Es posa el nom de la nova taula a crear

SEMPRE ES FAN A PARTIR D'UNA CONSULTA DE SELECCIÓ

Page 39: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Consultas de actualización.

Las consultas de actualización son consultas que permiten modificar los datos almacenados en una tabla, modifican el contenido de los registros de una tabla. Se pueden modificar de golpe todos los registros de la tabla o sólo los que cumplan una determinado condición.

Es fa:

1. Es fa una consulta de selecció 2. Es fa clic al botó actualitzar

3. El Origen de la consulta puede ser una tabla, una consulta o una combinación de tablas.

- En la cuadrícula QBE solamente ponemos el campo o campos que intervienen en los criterios de búsqueda y los campos que se quieren actualizar. - En la fila Actualizar a: escribimos la expresión que calcula el nuevo valor a asignar al campo. - La expresión puede ser un valor fijo, un nombre de campo del origen o cualquier expresión basada en campos del origen, también podría ser un parámetro - Esta expresióndebe generar un valor del tipo de dato apropiado para la columna indicada. - Para que la actualización afecte a una parte de los registros de la tabla tendremos que seleccionar los registros a actualizar mediante un criterio de búsqueda. Si la consulta no incluye criterio de búsqueda se actualizarán todos los registros de la tabla.

- Al camp actualitzar hi escriurem l'expressió adequada amb GENERAR

Page 40: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Consulta de datos anexados.

Las consultas de datos anexados son consultas que añaden filas enteras a una tabla. Los nuevos registros se agregan siempre al final de la tabla. La inserción se puede realizar de una fila o de varias filas de golpe, normalmente cogiendo los datos de otra tabla por eso una consulta de datos anexados tendrá un origen (la tabla o tablas de donde cogerá los datos) y un destino (la tabla donde insertamos estos datos).

Com es fa ?

1. Consulta de selecció 2. Executar per comprovar els resultats 3. Fer clic a ANEXAR

4. Escribimos en el recuadro Nombre de tabla: el nombre de la tabla donde queremos insertar los nuevos registros... veure pag 72 dels apunts

Page 41: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Consulta d'eliminació.

Las consultas de eliminación son consultas que eliminan de una tabla los registros que cumplen el criterio de búsqueda especificado.

Com es fan:

1. Consulta de selecció dels registres a eliminar 2. Clic a ELIMINAR

3. Si l'origen de la consulta són vàries taules cal indicar de quina taula es volen eliminar els registres: Es fa clic a HOJA DE PROPIEDADES

es posa registros unicos a SI

En la fila Eliminar: podemos seleccionar dos opciones, la opción Dónde indica un criterio de búsqueda, y la opción Desde indica que queremos borrar los registros de la tabla especificada en esa columna.

Page 42: Conceptes generals d'una base de dades relacionalinstitutpedraforca.com/fp/downloads2/1_access_gener_ 21.pdf · Distribuïdors és una base de dades d'una empresa que es dedica a

Cuando el origen es una sola tabla la columna Desde no es necesaria.