Aplicacions amb la base de dades Access
Enrera
Mòdul 2: expliquem conceptes  
  Pràctica
1
2
3
   
Exercicis
Exercicis
 
 

L'objectiu principal d'aquesta pràctica és continuar aprofundint en la creació de les taules i aconseguir deixar la base de dades de la Biblioteca preparada per a l'establiment de les relacions que treballareu en el mòdul 3.

Així, els temes que es tractaran en aquesta pràctica concretament són: els tipus de camps i les seves propietats.

   
Desenvolupament de la pràctica
   
Pràctica

Els punts que es pretén desenvolupar durant la tercera pràctica d'aquest segon mòdul són:

   
  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. En aquesta animació es pot veure quines són aquestes variacions: veure-la.

Segons el tipus de camp que tingueu, les propietats poden variar, tal com acabeu de veure. 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:

Configuració
Valors que pot incloure
Decimals
Ocupa
Byte 0 a 255
0
1 byte
Entero -32.768 a 32.767
0
2 bytes
Entero Largo -2.147.483.648 a 2.147.483.647
0
4 bytes
Simple -3,4 X 10^38 a 3,4 X 10^38
7
4 bytes
Doble -1,797 X 10^308 a 1,797 X 10^308
15
8 bytes

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, vista anteriorment.
  • 0 a 15: els dígits de l'esquerra del separador decimal es mostren tal com s'hagi especificat en la propietat Formato.

D'això se'n parlarà al mòdul 3.

   
  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:

Tipus dada Format Comentari
Numèric

General
Moneda
Fijo
Estándar
Porcentaje
Científico

La informació es mostra tal com l'escriu l'usuari.
Mostra el punt de milers.
Presenta un dígit amb almenys 2 decimals.
Punt de milers i 2 decimals.
Multiplica el valor per 100 i mostra símbol %, 2 decimals.
Ús de la notació científica estàndard.
Fecha/Hora General

Larga
Mediana
Corta
És la predeterminada i pot mostrar l'hora i la data per separat o totes dues a la vegada.
Agafa la configuració del tauler de control de l'ordinador.
Com l'exemple: 06-Abr-04
Segons el que hi hagi configurat al tauler de control.
Sí/No Sí/No

Verdadero/
Falso
Activado/
Desactivado
Configuració predeterminada. Aquest camp pot mostrar els valors 0 = No i -1 = Sí.
Falso = 0 i Verdadero = -1.

Desactivado = 0 i Activado = -1.

També hi ha la posibilitat de crear els nostres propis formats. Així, cal dir que l'estructura d'aquest codi té quatre seccions:

  1. Per quan el nombre és positiu.
  2. Per quan és negatiu.
  3. Per quan el seu valor és 0.
  4. 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:

Exemple Explicació
[azul]#.###,00;[rojo]-#.###,00 Mostrarà els valors positius en color blau, amb punt de milers i amb dos decimals. Els negatius, amb signe - i amb color vermell.
[azul]#.###,00;[rojo]-#.###,00;"-";[rojo]"No hi consten dades"
Aquest segon és similar a l'anterior, només que, quan el valor del camp sigui zero, mostrarà un guió i, quan no hi hagi cap contingut, mostrarà el text en color vermell: "No hi consten dades".
"Alumne nº "#.##0 Només teclejant el número d'alumne 1000, el camp mostrarà el textual Alumne nº 1.000

En els camps de tipus text, el format té dues parts:

  1. Quan conté text.
  2. Quan no conté res.

També haureu de tenir en compte els valors dels següents signes:

  • Espais en blanc: es mostren com espais literals.
  • Text entre cometes: es presenta literalment, tal com estigui escrit.
  • !: obliga el contingut del camp a la dreta de l'expressió.
  • @: mostra el contingut del camp on situeu aquest signe.
  • >: converteix a majúscules.
  • <: converteix a minúscules.

Ara ja podeu definir-ne de personalitzats:

Exemple Explicació
[azul]@;[rojo]"No hi ha dades" Converteix en blau el que s'escriu i, si no hi poseu res, surt en vermell el text: "No hi ha dades".
!"D. "@ Sortirà el tractament D. davant del nom que escriviu per teclat

Al final d'aquesta pàgina es plantegen unes pràctiques d'aquests tipus de formats: anar-hi

   
  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.

La següent imatge mostra la pantalla d'aquest assistent:

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:

Caràcter Màscara per a
0 Dígits: obliga a introduir dades.
9 Dígits i espais en blanc: permet la no introducció de dades.
# Dígits, signes + i -, i espais en blanc: permet la no introducció de dades.
L Lletres: obliga a introduir dades.
? Lletres: entrada no obligada.
A Lletres i dígits: obliga a introduir dades.
a Lletres i dígits: entrada no obligada.
& Qualsevol caràcter o espai en blanc: obliga a introduir dades.
C Qualsevol caràcter o espai en blanc: entrada no obligada de dades.
. , : ; - / Separadors decimals, de milers, de data/hora segons l'establert en el tauler de control.
< Converteix a minúscules els caràcters de la seva dreta.
> El mateix, però a majúscules.
!

Fa que s'ompli el camp de dreta a esquerra.

\ Fa que el següent caràcter es tracti com un caràcter normal. S'utilitza per introduir els caràcters especials de màscares.

Exemples de màscares personalitzades:

Exemples Explicació
(900) - 900.00.00 Per un telèfon. El parèntesi sortirà sense haver-lo de teclejar. El primer 9 permet posar o número o espai en blanc. Els dos 0 següents obliguen a introduir un número. El parèntesi de tancar i el guió sortiran sols, i la resta de 9 i 0, tal com s'explica al començament.
>L<??????????????????;0 La L obliga a introduir lletra. El signe > transforma la primera lletra en majúscules. El signe < corverteix, a partir de la segona lletra, en minúscula. El signe ? permetrà la introducció de lletres o d'espai en blanc, només. El 0 final vol dir que voleu emmagatzemar també els valors de la màscara.
90/>L<LL/0000;1 Per una data, el primer 9 deixa posar espai en blanc. El 0 obliga a posar número. El signe / apareixerà sol. El >L obliga a posar lletra i la transformarà en majúscula. El <LL obliga a posar dues lletres més i les convertirà en minúscules. Els 0000 obliguen a introduir quatre dígits numèrics per a l'any. L' 1 final obligarà a guardar només els valors introduïts per teclat i no els de la màscara.

Aquest apartat el veureu amb més detall a la part final d'aquesta pàgina, en la part de pràctiques. Anar-hi

   
  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 lloc de publicació del llibre, 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 llibre: =Fecha()+7, que us donaria la data d'una setmana després del dia actual.

   
  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, falto, Sí, No, Nulo...).

Segons això, podreu crear uns exemples com aquests:

Exemples Explicació
>=#01/01/2004# Només admetrà dates a partir del primer dia de l'any 2004 (les dates van sempre entre #data#).
Entre #01/01/2004# Y 01/01/2004# Validarà només dates dins de l'any 2004.
Entre #01/01/2001# Y Fecha() Validarà les dates entre el primer dia de gener de 2001 i el dia actual.
Entre 1,20 Y 2,20 Per valorar un camp, com Alçada dels alumnes.

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 a l'ú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:

Veureu també exemples dins de la part pràctica d'aquesta pàgina: veure-ho

   
  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 de cognom de l'alumne, 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 que permeti duplicar les dades. Per exemple, pels cognoms dels alumnes.
  • Sí (Sin duplicados): aquest cas no pot permetre duplicats. Per exemple, seria per un camp tipus DNI. Els camps clau (Codi d'actor, Codi de llibre, etc.) i els comptadors tenen aquest tipus de forma obligada.
   
  Pràctica: establir les propietats de la taula Llibres
   
 

Ara ve la fase d'aplicació de tots els coneixements explicats en aquesta pràctica 3.

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

Nom del camp Propietats a modificar
CODI_LLIBRE Com que és un camp comptador, no li fareu res, queda tal com era.
TITOL Tamaño: reduir a 30
Màscara: podeu posar >L<???????????????????????????
Indexado: Sí (Con duplicados)
CODI_AUTOR Com que és un camp codi relacionat amb una altra taula, el deixeu igual.
CODI_EDITORIAL Tamaño: 5. Serà un camp codi relacionat amb una altra taula.
Formato: >
CODI_TEMA Tamaño: 5. Serà un camp codi relacionat amb una altra taula.
Formato: >
LLOC_EDICIO

Formato: >
Tamaño: 25
Valor predeterminado: Barcelona

DATA_EDICIO Máscara: 90/>L<LL/0000;1
Regla de validación: Entre #01/01/2001# Y Fecha()
Texto de validación: "Has d'escriure dates a partir del començament de l'any 2001 fins a l'actualitat!"
CODI_IDIOMA Tamaño: 5. Serà un camp codi relacionat amb una altra taula.
Formato: >
CODI_CICLE Tamaño: 5. Serà un camp codi relacionat amb una altra taula.
Formato:>
COMENTARI No es modifica res.
FOTO_PORTADA Título: Portada
   
 

L'exercici d'aquest mòdul està pensat per acabar d'establir els tipus de camp i les propietats de tot el fitxer Biblioteca.

Aquest enllaç estableix un enllaç a l'exercici d'aquest mòdul 2.

   
Atenció !

Aquest mòdul pot semblar una mica massa teòric, però s'hi donen les bases per poder crear unes taules amb un control de camps bastant acurat. A partir d'aquest bon disseny, els objectes que es basen en les taules heretaran tot el que establiu en aquesta fase inicial.

   
   
 
Amunt