base de dades. apunts

46
23/11/2010 1 INSTITUT ESCOLA DEL TREBALL DE BARCELONA CFGS: Administració i Finances CRÈDIT 11: Aplicacions Informàtiques Avançades Ana Mª Fernández Cobielles [email protected] Informació = Dades ? Dades: són fets recollits en una organització, que estan pendents de processar. Informació: s’obté una vegada aquests fets es processen, agreguen i presenten de la forma més adient per a que puguin ser útils a algú dintre de l’organització. Les dades quedan perfectament identificats per elements simbòlics (lletres i nombres), que reflecteixen valors o resultats de medicions. La informació són dades dotats de rellevància i propòsit, que permeten reduir la incertesa de qui els rep. TRANSFORMACIÓ AGREGACIÓ PRESENTACIÓ DADES INFORMACIÓ Font: Sistemas de información. Gómez Veites, Álvaro Ed. Ra-ma (2003)

Upload: ana-maria-fernandez-cobielles

Post on 16-Aug-2015

229 views

Category:

Documents


2 download

DESCRIPTION

Apunts sobre base de dades en Access.

TRANSCRIPT

23/11/20101INSTITUT ESCOLA DEL TREBALL DEBARCELONACFGS:Administraci i FinancesCRDIT 11: Aplicacions Informtiques AvanadesAna M Fernndez [email protected] = Dades ?Dades:sn fets recollits en una organitzaci, que estanpendents de processar.Informaci:sobt una vegada aquests fets es processen, agregueni presenten de la forma ms adient per a que puguin sertils a alg dintre de lorganitzaci.Les dades quedan perfectament identificats per elementssimblics (lletres i nombres), que reflecteixen valors o resultatsde medicions.La informaci sn dades dotats de rellevncia i propsit, quepermeten reduir la incertesa de qui els rep.TRANSFORMACIAGREGACIPRESENTACIDADES INFORMACIFont: Sistemas de informacin. Gmez Veites, lvaro Ed. Ra-ma (2003)23/11/20102Caracterstiques de la informaciPer tant ha de ser:1. Exacta: Precisa i sense errors.2. Completa: contenir tots els fets que puguin ser importants.3. Econmica: el cost per obtenir-la ha de ser menor que el benefici queproporciona.4. De Confiana: sha de garantir la qualitat de les dades utilitzades i de lesfonts dinformaci.5. Rellevant: sha devitar recollir fets que no aportin cap valor.6. Nivell de detall: segons la decisi. Presentaci adient per a que resultisenzilla i fcil dutilitzar.7. Oportuna: sha de lliurar a la persona que la necessita en el momentoport per facilitar la pressa de decisions.8. Verificable: sha de poder contrastar i comprovar en qualsevol moment.INFORMACISer til si... DECIDIRFont: Sistemas de informacin. Gmez Veites, lvaro Ed. Ra-ma (2003)SISTEMA DINFORMACIPodemdir que s:Conjunt delements interrelacionats (mitjans tcnics, persones iprocediments) que te per objectiu capturar dades, emmagatzemar-los itransformar-los de forma adient i distribuir la informaci obtinguda enaquest procs.Font: Sistemas de informacin. Gmez Veites, lvaro Ed. Ra-ma (2003)Es tracta dun sistema que disposa duns inputs (dades) i uns outputs(informaci) i un procs de transformaci dels inputs en outputs, imecanismes de retroalimentaci.EntradaProcsSortidaRealimentaciLa informaci facilita lintegraci i coordinaci de les activitats que formen els diferents processos de lorganitzaci.23/11/20103La importncia de la informaci en la majoria deles organitzacions, i per tant el valor de lesbases de dades, ha suposat eldesenvolupament duna gran quantitat deconceptes i tcniques per la gesti eficient deles dades.La gesti de les dades implica la definicidestructures per lemmagatzematge de lainformaci com la provisi de mecanismes perla seva gesti.Fonaments pel disseny daplicacions i bases de dadesLes dades seran emmagatzemades de tal forma que: Siguin independents dels programes que els utilitzen. Presentin un enfocament com i controlat per afegirnoves dades, actualitzar-les o eliminar-les. La seva estructura serveixi de fonament peldesenvolupament de futures aplicacions.Fonaments pel disseny daplicacions i bases de dadesLes bases de dades permeten la definici iemmagatzematge de la informaci, i els sistemes degesti de bases de dades aporten els mecanismes perla seva gesti.23/11/20104La diferncia entre un conjunt de dades i una base dedades, s que en la base de dades, les dades estanorganitzades duna forma estructurada per a que siguifcil operar amb elles, per tant, afegir, actualitzar,eliminar dades, realitzar consultes, s a dir extreureinformaci que compleixi determinades condicions, icrear informes, resulta una tasca molt senzilla.Concepte de Base de DadesAventatges de les bases de dadesUna base de dades ens permet:Emmagatzemar les dades.Controlar la consistncia de les dades.Consultar el seu contingut, buscant dades concretes.Actualitzar, modificar o eliminar la informaci emmagatzemada en la base de dades.Realitzar clculs, basats en les dades emmagatzemades.Imprimir les dades existents.23/11/20105Conjunt dinformaci estructurada,que utilitza una organitzaci pergestionar els seus treballsadministratius, al que es pot accediramb una aplicaci informtica(programa) o mitjanant un sistemade consulta de base de dades(SGBD).Definici deBase de DadesDisseny duna base de dadesAbans de crear una base de dadessha de pensar molt b el seu disseny,ja que una vegada creada i amb lesdades introdudes, s ms difcilmodificar-la.Un bon disseny s la clau per la creaciduna bona base de dades. Una base dedades ben dissenyada condueix a un sms eficient de les taules, consultes,formularis i informes.23/11/20106Procs de disseny duna Base de Dades1. Saber la finalitat de la base de dades.Es tracta de saber que vol la persona que ha encarregat eldisseny de la base de dades, per tant el dissenyador hadajudar a lusuari a descobrir que vol exactament. Eina autilitzar:LLAPIS i PAPER2. Reunir tot tipus de informaci que hagi de contenirIdentificar les dades amb les quals sha de treballar.3. Definici dels processosDescobrir com es relacionen les dadesExisteixen diversos models dorganitzaci de la informaci emmagatzemada en una base de dades, model jerrquic, en xarxa...Models de bases de dadesEl model que nosaltres estudiarems el que sanomena model relacional idna lloc a les BASES DE DADES RELACIONALS BASES DE DADES RELACIONALSEn els anys setanta, es van establir les bases del model relacional isn molt importants les aportacions d Edward F. Codd, que treballavaen el departament dinvestigaci dIBM, i en 1970 va publicar el seutreball: Un model relacional de dades per grans bancs de dadescompartides"Tamb va ser aquest cientfic qui va definir les 3 formes normals ques'apliquen per la normalitzaci de sistemes de base de dades.23/11/20107Edward F. CoddNacidoenPortlandBill, Dorset (Reino Unido), de padrefabricante de cuero y madre profesora de escuela, estudimatemticasyqumicaenlaUniversidaddeOxford. Mstarde, durante la Segunda Guerra Mundial, fue pilotocapitn de la Royal Air Force entre 1942 y 1945.En 1948 se mud a Nueva York para trabajar comoprogramador matemtico para IBM, pero se mud a Ottawaen1953debidoadiscrepancias polticas conel senadoramericano Joseph McCarthy.Tras volver unadcada ms tardeaEstados Unidos sedoctor en ciencias de la computacin en la Universidad deMichigan, en Ann Arbor (1965).En 1967 se mud a California, donde trabaj en elLaboratorio IBM de Investigacin en San Jos del Cabo.En 1981 recibi el Premio Turing de ciencias de la computacin, el mayor galardn ensu campo.Muri de fallo cardaco en Williams Island, Filadelfia (Estados Unidos), el 23 de abril de2003.Font: WikipediaMicrosoft Access, s unSGBD, d estructurarelacional, dissenyat per utilitzar enordinadorspersonals tipus PC.Els sistemes que gestionen la informaci emmagatzemada en la base de dades, sanomenen SISTEMES GESTORS DE BASES DE DADESQuan les dades es troben en una nica taula, es tracta duna estructura plana.Si les dades estan repartides en diferentstaules, entre les que existeix una relaci,estarem davant duna estructura relacional.Base de Dades Relacionals23/11/20108EL SGBDACCESS: OBJECTESTAULESCONSULTESFORMULARISINFORMESMACROSContenen les dadesPer introduir dadesPresentaci de dadesPer fer preguntesConjunt daccionsMODULOS Procediments VBConceptes i elementsObjecte principal duna base de dades, cont lesdades sobre alg o alguna cosa per exemple: Clients,Alumnes, Treballadors, Comandes, Factures, Articles,Notes, etc.REGISTRE: Cada registre cont les dadesreferents a una persona u objecte.Registre = filaCAMP: cont un aspecte, tipus o categoriade informaci d una persona o objecte.Camp = columnaEn una taula tenim:T A U L E S23/11/20109Taula de: 18 registres5 campsREGISTRES = Files REGISTRES = Files REGISTRES = Files REGISTRES = FilesNom de la taulaTotal registresCAMPS: ColumnesConceptes i elementsT A U L E SLes dades es podrien emmagatzemar en nomsuna taula, (base de dades plana) com perexemple una agenda telefnica, per s pocfreqent i gaire eficient si sha de gestionar granquantitat de informaci.Per exemple si utilitzem noms una taula peremmagatzemar les dades dels nostres clients i lescomandes que ens realitzen, ens adonem que lataula cont gran quantitat de informaci repetida, jaque les dades dels clients es repeteixen tantesvegades com comandes hagin realitzat.Consideracions sobre les taulesT A U L E S23/11/201010Exemple:Si analitzem aquesta taula es pot veure que hi ha clients que apareixen msduna vegada, tantes com vendes li hagin fet, per tant estem repetint lesdades del client cada vegada que li fem una venda, aquest fet comporta...Consideracions sobre les taulesT A U L E SLa gesti de clients i les seves comandes la podrem dur a terme,per comportaria els problemes anteriors com a conseqncia de la repetici de dades. Com es solucionen aquests problemes?Definint ms duna taula. Redundncia de informaciGran volum demmagatzematgeDificultat per actualitzar una dada, per exemple si un client canviadadrea haurem de modificar la adrea en tots els registresdaquest client.Inconsistncia en la informaci, si al modificar una dada noho fem en tots els registres en els que figura, les dadesserien inconsistents, ja que un client podria aparixer ambdos adreces diferents.els segents problemes:Consideracions sobre les taulesT A U L E S23/11/201011Determinar les taules necessries s el procs mscomplicat a lhora de dissenyar la base de dades.Aspectes a tenir en compte:1. No ha de contenir informaci duplicada ino ha deduplicar-se informaci entre taules.2. Cada taula ha de contenir fets relatius a unassumpte. Per exemple les dades personals dunalumne, dun client3. El nom de la taula ha de fer referncia a l assumptei s convenient posar-li una t o tbl, davant del nom,per exemple:t_Clients o tblClients o tClientsQuantes taules hem de definir?T A U L E SCada taula cont informaci referent a un mateix assumpte icadacamp duna taula cont informaci de fets individuals sobrelassumpte de la taula.Aspectes a tenir en compte:1. Relacionar cada camp directament amb lassumpte de la taula.2. NO incloure dades derivades nicalculades, dades que sn elresultatduna expressi.3. Sha dincloure tota la informaci necessria.4. Emmagatzemar la informaci en les seves parts lgiques ms petites,per exemple nom, cognom1 i cognom2 en lloc del nom i cognoms enun sol camp.5. El nom del camp pot estar format per un total de 64 carcters, lletres,nombres, espais en blanc o carcters especials. Sha dintentar que elnom sigui el ms curt possible.6. Es convenient que els noms dels camps siguin significatius per a quelusuari pugui identificar les dades emmagatzemades en el camp.7. En una taula no pot haver dos camps amb el mateix nom.Determinar els campsT A U L E S23/11/201012No incloure espais dintre dels noms de camp. Si es desitja que un nom decamp estigui compost per ms duna paraula, es pot unir amb el carcterde gui baix, per exemple: Nom_ClientNo utilitzar carcters especials com: ! . [] ` $, &,@, #,%,, etc.Shadedonar alscampsnomsambsentit i sconvenient utilitzar elmateix nom en tota la base de dades per un camp que aparegui en variestaules.No utilitzar la paraula Nom per designar un camp. Si per exemple es dnael cas que es tingui taules de clients, de productes, de provedors, en lesque ha daparixer el camp, nom, s convenient anomenar-los:NomClient, NomProducte, NomProvedor, etc.Sha devitar utilitzar noms de camp que puguin coincidir amb algun nominterndAccess o Visual Bsic. Perexemple,totsel objectesde labdtenen una propietat NOMBRE (Name), per tant ser convenient seguir lesindicacions del punt anterior.Evitarnomsquesiguinigualsque funcionsinternes, comperexempleFecha, Hora, Ahora.Recomanacions per donar nom als campsT A U L E STipus de dades que emmagatzemar elcamp: text, nombres, dates, etc.Lespai que Access reservar peremmagatzemar el contingut del camp.Les operacions que es podran realitzarsobre el camp.La possibilitat dutilitzar el camp comclau principal.El tipus de dades que sespecifiqui per a cada campdetermina les segents caracterstiques:Tipus de dadesDades: sn fets recollits en una organitzaci, que estan pendents de processar.C A M P S23/11/201013Alfanumric: Text i nombres. Fins 255 carcters. Alfanumric:Text ms llarg: 64.000 carctersNombres amb els que es poden fer clculs.Data i horesQuantitats expressades en una moneda concretaValor nic que genera lAccess per a cada registre nou.Noms dos valors. Cert/Fals ( 0 per a Fals i -1 per Cert)Inserir imatges, grfics u altres objectes ActiveXEnllaos a arxius en la www, intranet, etc.Valors que procedeixen daltres taules o una llista de valorsTipus de dadesArxius, imatges, documents, fulls de ccul o grfics.Access 2007 suporta 10 tipus de dadesTextoMemoNmeroFecha/HoraMonedaAutonumricoSi/NoObjeto OLEHipervnculoDatos AdjuntosAsistente para bsquedasC A M P STipus de dades: Propietats delscampsDATA/HORAMONEDA SI/NO HIPERVINCLE AUTONUMRICOLEDADES ADJUNTESTEXT NUMRIC MEMOC A M P S23/11/201014Asistente para bsquedasAquesta opci en el desplegable tipus de dades de la vista diseo dunataula, no s realment un tipus de dades. Quan triem aquesta opci, unassistent ens ajudar a definir un camp de consulta senzill o complexe. Un camp de consulta senzill utilitza el contingut daltra taula o unallistadevalors per validar el contingut denoms unvalor perregistre o fila. Un camp de consulta complexe, permet emmagatzemar ms dunvalor del mateix tipus de dades en cada registre o fila.OBSERVACI:No utilitzarem mai aquest assistent,ja que amb freqncia crea SQL estranyper lapropietat origendefila, sempredefineixunarelacientre lataula quesesteditant i la taulade bqueda, idefineixndexenels dos camps. Si lataula de bsqueda cont noms unesquantesfiles, lndexsunaprduadetemps i recursos.C A M P SPropietats delscampsPROPIETAT DESCRIPCITamao Del Campo Definir el tamaomximode losdatosalmacenadosconel tipo de datosTexto, Nmeroo Autonumrico.Formato Personalizarelmodo enque apareceelcampo cuando se muestra o imprime.Tots els tipus,excepteObjectesOlei DadesAdjuntesLugaresDecimales Especificarel nmerode posicionesdecimalesutilizadasal mostrarnmeros.Numrici MonedaNuevos Valores Indicarsi elvalorde un campo Autonumricoaumentao recibe un valoraleatorio. AutonumricMscara De Entrada Mostrarcaracteresde edicincomo gua para la entradade datos.Text, Numric,Data/Horai MonedaTtulo Definir el textoque se muestra de forma predeterminadaenlas etiquetasde los formularios,informesy consultas.Tots elstipus de dades.Valor Predeterminado Asignarautomticamenteun valorpredeterminadoa un campo cuandose agregannuevosregistros.Tots excepte:Autonumeric,Ole i Dadesadjuntes.Regla De Validacin Proporcionaruna expresinque debe ser verdaderacuando se agregao cambia elvalordelcampo.Tots excepte:Autonumeric,Ole i Dadesadjuntes.Texto DeValidacin Especificarel texto que aparececuando un valorinfringe la expresinRegla De Validacin.Tots excepte:Autonumeric,Ole i Dadesadjuntes.Requerido Exigirque se especifiquendatosenun campo.Tots excepte:Autonumrici Si/NoPermitirLongitudCero Permitirque se especifique(estableciendola propiedadenS) una cadena de longitudcero ("") enun campo Texto o Memo o hirpervincle.Indexado Agilizarel acceso a los datosde un campo mediante la creaciny utilizacinde un ndice.Tots excepteOle i DadesadjuntesCompresinUnicode Comprimirel textoalmacenadoeneste campo cuandose especifica una grancantidadde texto (> 4.096caracteres).Texto, Memo i hipervincleModo IME Controlarla conversinde caracteresenla versinasitica de Windows.Text, Memo, Data/horai hipervincle.Modo De Oraciones IME Controlarla conversinde caracteresenla versinasitica de Windows.Text, Memo, Data/horai hipervincle.EtiquetasInteligentes Anexaruna tarjeta inteligentealcampo.Tots excepte:Si/No,Olei dadesadjuntes.Slo Anexar Permitirel controlde versiones(estableciendola propiedadenS) de un campo Memo i hipervincle.Formato De TextoSeleccionarTexto enriquecidopara almacenartextocomo HTML y permitirelformato de textoenriquecido.SeleccionarTexto sin formato para almacenarslotexto.MemoAlineacinDel Texto Especificarla alineacinpredeterminadadeltextodentrode un control.Tots exceptedadesadjuntes.PrecisinAparece si enTamao de campo seleccionamosDecimal:Especificarel nmerototalde dgitospermitidos,incluidoslos que aparecena la derechay a laizquierdade la coma decimal.Valorpredeterminado18.EscalaAparece si enTamao de campo seleccionamosDecimal Especificarelnmero mximo de dgitosque puedenalmacenarse a la derecha y a la izquierda dela coma decimal.Font: Ajuda de Microsoft Access 2007Propietats delscamps23/11/201015Noms comentarem el que fa referncia a lapropietat tamao y formato de campo, la resta delespropietats funcionen igualqueen les dades detipus text.Tamao del campo: La mida dels camps de tipusnumric sha despecificar sempre, ja que aixdetermina quin tipus de nmero admet.Aquests sn els disponibles:1. Byte: Nmeros entre 0 i 255, sense fraccions i decimals.2. Entero: Nmeros entre 32.768 i +32.767, sense fraccions ni decimals.3. Entero largo: Nmeros entre 2.147.483.648 a +2.147.483.647, sense fraccions nidecimals.4. Simple: Nmeros entre 3,4 x 1038fins a +3,4 x 1038 .Precisi sis decimals.5. Doble: Nmeros entre -1,797 x 10308fins a +1,7x10308Precisi deu decimals6. Id. De rplica: Un identificador de 16 bytes nic a nivell global.7. Decimal: Un nmero sencer amb una precisi decimal que pot contenir valors desde -7,9228x 1028fins a +7,9228 x 1028. La precisi predeterminada(nmero de llocs decimals) 0i lescala 18.C A M P SPropietats delscampsFormat del campo: Per defecte lesdadesdetipusnumricapareixendelamateixa manera que shan introdut persels pot donar aquests formats: Nmero general: El nmero apareix de la mateixa forma que sintrodueix. Moneda: Mostraelsnmerosnegatiusambel signe- Apareixsenseposicions decimals, amb un punt per separar els milions i amb el smbol Euro: Smbol del euro sense tenir en compte la configuraci del panel decontrol i dos llocs decimals. Fijo: Mostra com a mnim un dgit,sino es canvia la propietat Lugaresdecimales, apareixen dues posicions. Estndar: Utilitza un punt per separar els milions i dues posicions decimalsque es poden canviar. Porcentaje: Mostra el valor com un percentatge (el nmero es multiplicaper 100 i se i afegeix el smbol %) Cientfico: Mostra el valor com una notaci cientfica.Propietats delscampsC A M P S23/11/201016Definir ndexs (Propietat Indexado)Podem afegir un ndex a un camp per facilitar lordre i recercade dades, mitjanant aquest camp.Tots els camps que gaudeixin daquesta propietat poden serindexats,arab,nosconvenient indexar-lostots, nomsaquells que tenenmajor probabilitat de ser utilitzats perordenar i buscar.El indexat el fa el programa i hi ha dos tipus: S (Con duplicados): Permet repetir lesdadesduncamp. Exemple el nom duna persona, el cognom, etc. S (Sin duplicados): No admet repetir un mateixcontingut en un camp. Exemple un DNI, nmero dematrcula, etc.Propietats dels campsC A M P SPropietats delscampsTots els camps disposen a ms de la propietat General, la propietatBsqueda, que s molt til per introduir dades en les taules ja sigui des dela taula directament, o mitjanant un formulari.Per defecte apareix en Mostrarcontrol, cuadrodetexto, persiobrimeldesplegableenspermetseleccionar cuadro combinado ocuadro de lista.Cuadro de lista:sunallistaenlaqual podemescollir el valor que vulguem.Cuadro combinado:Espot escriureunvalor nouoescollir-ne un de la llista.Fitxa BsquedaC A M P S23/11/201017Mostrar control Es pot triarcuadro de lista o cuadro combinado o deixar cuadro de textoTipo de origen de la fila Indicar si les dadesestan en una taula, consulta, llista de valors o llista de camps.Origen de la fila Sha de seleccionar l origen on sn les dades, clicar licone dels tres punts. Surt una consulta en vista disseny i sha de seleccionar lorigen on estan emmagatzemades les dades.Columna dependiente Columna de origen de la fila que proporciona elvalor emmagatzemat pel quadre de llista o quadre combinatNmero de columnas Les columnes que es vol visualitzar al desplegar.Encabezado de columna Si/No, si es vol que mostri el nom del campen la part superior dela columna visualitzada al obrir la llista.Ancho de columnas Lamplada de les columnes del cuadro de lista o cuadro combinado.Permitir ediciones de lista de valores No/Si, permet a lusuari afegir i editar elements de lorigen de la fila subjacent.Formulario de edicin de elementos de lista Especificar el nom del formulari que Access obrir per a que lusuari afegeixi elements al origen de la filaMostrar slo valores de origen de fila Permetre o no, que noms es mostrin els valors que coincideixen amb lorigen de la fila.Filas en lista (Quadre combinat) Especificar quantes files mostrar el quadre combinat al obrir la llista.Ancho de la lista (Quadre combinat) Especificar l amplada de la llista al obrir-la. Auto obre la llista segons lamplada del camp.Limitar a la lista (Quadre combinat) No/SiSi, noms acceptar el text que coincideixi amb els valors de la llista. No, permet a lusuari introduir un valor que no est en la llista. Quadre de llista Quadre combinatPropietats delscamps: Fitxa BsquedaCamp clau principal o primariaLa clau principal identifica cada registre de manera nica.Perexemple, si tenimunallista dalumnes, i volemdiferenciar-losunsdelsaltres, espodria repetir el nom, el cognom, per no el nmero de DNI, o el nmero de matrcula.Pertant, el campDNI, oel campnmerodematrcula, serienelscandidatsper sercamp clau.Clau externa o foranas un o ms camps duna taula, que fa referncia a un camp que s clau principal enaltra taula amb la que est relacionada.Un camp clau, sempre s un camp amb la propietat de Indexado:S (Sin duplicados).Clau MltipleEn situacions en les que no es pot garantir lexclusivitat dun nic camp, es pot designardos o ms camps com clau principal.Aquesta situaci s molt com en el cas de relacions varis a varis, quan sha de fer lataula intermdia.Camps clauCadascuna de les taules ha de tenir un valor o conjunt de valors que identifiquinde forma nica cadascun dels registres de la taula.C A M P S23/11/201018s un camp o conjunt de camps que identifiquen els registres dela taula de forma nicaHem descollir d entre tots els possibles camps candidats a ser clau,el que compleixi els segents:Camps clau: clau principal o primariaC A M P SREQUERIMENTSQue sigui nic, de tots els valors que el camppugui contenir, no pot haver dos valorsiguals.Que el seu valor no canvi.Que es tingui coneixement del valor daquestcamp per tots els registres de la taula.Que la grandria del camp sigui mnima.Una base de dades s relacional, quan la informaci s'emmagatzema endiferents taules entre les quals sestableix un vincle o relaci.Concepte i exempleRELACIONSR E L A C I O N S23/11/201019Tipus de taules relacionades Treballar amb ms duna taula ens permet distribuir la informaci enblocs. Treballem amb taules ms petites el que ens proporciona majoragilitat al introduir les dades. Per establir les relacions haurem de tenir al menys dues taules, i hande tenir un camp com. No necessriament aquest camp ha de tenirel mateix nom, (s recomanable que el tingui), per les dades han deser del mateix tipus i la mida dels camps ha de ser igual. Podem fer relacions amb camps de tipus:- Text amb text- Numric amb numric- Autonumric amb numric (camp numric tamao entero largo) s necessari que hi hagi un camp o conjunt de camps que sigui clauprincipal.Regles de gesti o restriccionsLes regles de gesti o restriccions sn les que determinaran lesrelacions entre les taules.R E L A C I O N SID treballador Nom Cognoms IdDepartament1 Esperanza Garca 12 Francisca Cabaco 23 Adolfo Mart 34 Santiago Valls 45 David Castells 66 Ismael Alvarez 47 Rafael Sans 58 Carmen Arnaiz 1IdDepartament Departament1 Fabricaci2 Administraci3 I+D4 Mrqueting5 RRHH6 VendestTreballadorstDepartamentsR E L A C I O N SExempleTenim dos taules tTreballadors i tDepartaments que estan relacionades mitjanant un camp com.23/11/201020Quan en una base de dades hi ha ms duna taula relacionades, una ser laprincipal i la resta de les taules les secundries.La principal ser la del costat de l1 i la secundria la de 1 11 Relacions entre taules: Tipus de relacionsHi ha tres tipus de relacions:R E L A C I O N SRelaci un a un: acadaregistredunataulali corresponuninoms un registre daltra taula i viceversa.TAULA ALUMNESNMAL Nom Cognoms Adrea567 Esperanza Garca Paris, 23345 Francisca Cabaco Rosell, 232783 Adolfo Mart Muntaner, 66564 Santiago Valls Londres, 114125 David Castells Urgell, 97406 Ismael lvarez Aribau, 13TAULA NOTES FINALSNMAL C1 C2 C3 C4 C5 C6 C7567 S B B S I I N345 B S S I S S S783 N S S S B B S564 S E S N B B S125 S N B N N B B406 B S N N E E N1 1Cada alumne t un sol registre amb les seves dades personals enla taula alumnes, i per aquest mateix alumne hi haur un solregistre en la taula notes.Tipus de relacionsRealment totes les dades podrien estar en una nica taula. La taula alumnesseria la principal i la taula Notes finals, la secundria, en aquest cas es potdir que s la complementaria.R E L A C I O N S23/11/201021Una taula amb el nom i cognoms de persones i altra taula amb els DNI de cada persona. La persona s nica i el seu DNI tambLa taula plantilla duna empresa i altra taula Dades personals.Cada treballador t un codi personal que noms pot fer referncia a un sol treballador, tant en una taula com en laltra.La taula actors i la taula fotos dels actors.Cada actor registrat a la taula actors, li correspon noms una foto de la taula Fotos.OBSERVACI: podem establir una relaci 1 a 1, per: dividir una taula amb molts camps. allar part duna taula per raons de seguretat emmagatzemar dades que noms saplica a un subconjunt (registres) dela taula principal.R E L A C I O N STipus de relacionsRelaci un a varis: Cadaregistredelataulaprincipal pot estarrelacionat amb varis registres de la taula secundria. Per cada registre de lataula secundria noms pot estar relacionat amb un nic registre de la taulaprimria.TAULA ALUMNESNMAL Nom Cognoms Adrea Ciutat IdProvincia567 Esperanza Garca Dalt, 23 Sitges 1345 Francisca Cabaco Gran, 45 Salt 2783 Adolfo Mart Monte, 34 Reus 3564 Santiago Valls Sol, 12 Garraf 1125 David Castells Pi, 43 Prat 1TAULA PROVINCIESPROVINCIA ID ProvinciaBarcelona 1Girona 2Tarragona 3Lleida 4PRINCIPALClau principalClau externa1Duna provncia poden ser varis alumnes, per un alumne noms pot ser duna provncia.SECUNDRIAR E L A C I O N STipus de relacions23/11/201022Una editorial concreta pot tenir varis llibres en unabiblioteca.Per un llibre no pot tenir vries editorials.Un equip de ciclistes t varis corredorsPer un ciclistanoms pertany aun sol equipEn un refugi de gossos poden havervries races.Per un gos noms pot ser duna raaTAULESPRINCIPAL (1)SECUNDRIA ()Editorials LlibresEquips CiclistesRaces GossosR E L A C I O N STipus de relacionsRelaci varis a varis: cada registre de la taula principal pot estarenllaada amb varis registres de la taula secundria, i cada registre de la taulasecundria pot estar enllaada amb diversos registres de la taula principal.Aquest tipus de relaci que s molt freqent, constitueix un problema, persolucionar-lo caldr transformar la relaci en dues relacions 1 a , el que ensobliga a crear una taula intermdia, freqentment se li diu taula duni, entre lesdues inicials.La taula intermdia tindr una clau mltiple o composta, formada per els campsclau de les dues taules.Per tant, les taules que tenen una relaci varis a varis, no es relacionendirectament, sin de forma indirecta a travs de la taula intermdia.R E L A C I O N STipus de relacions23/11/201023Relaci varis a varisExemple: Tenim dues taules:tPellcules i tActors:Un mateix actor ha pogutparticipar en diverses pellculesi una pellcula pot tenir diversosactors. Per tant, tenint unarelaci varis a varis.SOLUCI:Crear unatercerataula tRepartiment enlaqual anotaremelsactors de cada pellcula i les pellicules de cada actor.Es desf la relaci varis a varis i establimdos de 1 a varis.R E L A C I O N STipus de relacionsUn agent de policia local pot cobrir diferents serveis i aix mateix aquests serveis poden estar coberts per qualsevol dels agents de policia.Taules: tServeis i tAgents, crearem una intermdia tAgents-ServeisDos taules: tCrdits i tProfessors, un professor pot impartir ms dun crdit i un crdit pot estar impartit, per ms dun professor.Crearem una taula intermdia tProfessors-CrditsDos taules: tLlibres i tSocis, un soci pot agafar en prstec varis llibres i un llibre el poden agafar en prstec varis socis. Crearem una taula intermdia tPrstecsR E L A C I O N STipus de relacions23/11/201024Limitacions: No pot haver registres en una taula secundria que no estiguin enllaats amb lataula primria. No es permetr canviar un valor de la clau principal de la taula primria si hi haregistres de la taula relacionada que utilitzen aquest valor com a clau principal. No es podr esborrar un registre de la taula principal si hi ha un registre a la taularelacionada que hi faci referncia.Enlesrelacionsdetaulapodemexigir integritat referencial ievitar que apareguin registres orfesen les taules.La integritat referencial s un conjunt de regles, que utilitzen tots els SGBDrelacionats, per garantir que la base de dades mant, en tot moment, la informacide forma consistent.Sn els que fan referncia a un altre registre que no existeix.Per exemple una comanda en la corresponent taula que fareferncia a un client que no existeix en la taula clients.R E L A C I O N SLa integritat referencialLa integritat referencialActualitzar en cascada...Si sactiva es fan actualitzacions de registres encascada, pertant al canviarel valorduncampclauprincipalen la taula principal, sactualizen en la taulasecundria.Eliminar en cascada...Si activem aquesta opci, quan seliminin registres de la taula principal, Accesseliminar els registres relacionats de la taula secundria, prvia confirmaci.Al establir la integritat referencial no es pot eliminar un registre de la taulaprincipal si existeixen registres coincidents en la taula relacionada, perexemple no es pot eliminar un client, si en la taula comandes hi ha comandesdaquestclient. Podremeliminarel client i totselsregistresrelacionatssiactivem la casella Eliminar en cascadaTampocpodremactualitzar unvalorde clau principal a no ser que activemla casella Actualitzar en cascada.R E L A C I O N S23/11/201025La integritat referencialEn el cas que apareguin problemes al activar integritat referencial,hem de tenir en compte que sha de complir una srie de condicionsper poder aplicar-la.1. El camp com de la taula principal ha de ser clau principal oha de tenir un ndex nic.2. Els camps comuns han de tenir elmateix tipus de dades.Noms hi ha una excepci, un camp Autonumric pot estarrelacionat amb un cap de tipus nmero, amb la propietat decamp, Entero largo.3. Les dos taules han de ser de la mateixa base de dades. Noes pot exigir integritat referencial en les taules vinculades.R E L A C I O N SEXEMPLE RELACIONS: FilmotecaTAULAPRINCIPALTAULASECUNDRIATIPUS DERELACICAMPRELACIONANTTIPUS DE CLAU SEGONS TAULA:PRINCIPAL SECUNDRIAtActors tFotos_Actors 1 a 1 CodAct Clau Principal Clau PrincipaltActors tRepartiment 1a varis CodAct Clau Principal Clau Principal (mltiple)tPaisos tActors U a varis Codpais Clau Principal Clau ExternatPaisos tDirectors U a varis Codpais Clau Principal Clau ExternatDirectors tFotos_Directors 1 a 1 Coddir Clau Principal Clau PrincipaltDirectors tPellicules U a varis Coddir Clau Principal Clau ExternatDistribudora tPellicules U a varis Coddis Clau Principal Clau ExternatGenere tPellicules U a varis Codgen Clau Principal Clau ExternatSocis tPrestec U a varis Codsoc Clau Principal Clau Principal (mltiple)tPellicules tRepartiment U a varis Codpel Clau Principal Clau Principal (mltiple)tPellicules tPrestec U a varis Codpel Clau Principal Clau Principal (mltiple)OBSERVACI: Taules tRepartiment i tPrstec, sn taules per desfer relacions varis a varis, entre tActors i tPellicules, i tPellicules i tSocis. 23/11/201026EXEMPLE RELACIONS: PetaByteTAULAPRINCIPALTAULASECUNDRIATIPUS DERELACICAMPRELACIONANTTIPUS DE CLAU SEGONS TAULA:PRINCIPAL SECUNDRIAtClientstVendes U a varis IdClient Clau Principal Clau ExternatVenedors tVendes U a varis IdVenedor Clau Principal Clau ExternatFormaPagament tVendes U a varis IdFPag Clau Principal Clau ExternatVendes tArticles-Vendes U a varis IdVenda Clau Principal Clau Principal (mltiple)tProvedors tArticles U a varis IdProvedor Clau Principal Clau ExternatArticles tArticles-Vendes U a varis IdArt Clau Principal Clau Principal (mltiple)tCategoria tArticles U a varis IdCatego Clau Principal Clau ExternaOBSERVACI: la taula tArticles-Vendes es crea per desfer la relaci varis a varis, entre les taules: tVendes i tArticlesTipus de combinaciQuandefinimunarelacidetaula, els fets referents alarelacideterminenel dissenydelesconsultes. Aix, si definim una relaci entre dos taules i a continuaci fem una consulta per la queutilitzem aquestestaules, Accessseleccionaautomticament elscampscoincidents predeterminatsbasant-se en la relaci. Una consulta de varies taules combina la informaci de ms duna taula fentcoincidir els valors dels camps comuns, aquesta operaci sanomena COMBINACI INTERNA.Tambpodemcrearunacombinaciexternafentclicsobreel botTipodecombinacin, enelquadre de dileg Modificar relaciones i triar una de les opcions, combinaci externa a lesquerra ocombinaci externa a la dreta..SUGGERIMENT: sha devitar definir una relaci de combinaci externa entre dos taules, Access2007 vincula automticament dos taules incloses en un disseny de consulta utilitzant les relacionsque el dissenyador hagi definit, i en la majoria dels casos es voldr incloure noms els registrescoincidentsdelesdostaules, pertant, si esdefineixlarelacicomunacombinaciexterna,shaur de canviar el vincle entre les dues taules cada vegada que sutilitzen en una consulta.R E L A C I O N S23/11/201027Tipus de combinaci1. Demanen les vendes que hem fet als nostresclients, per tant, dissenyaremunaconsultaque combini les dos taules mitjanant elcamp IdClient. El resultat de la consulta contlainformacisobreelsclientsi lesvendes,nomspelsregistresenlesqueshatrobatcoincidncia. COMBINACI INTERNA.2. Femla consulta anterior per ara volemveure tots els clients fins i tot als que no elshem fet cap venda. COMBINACI EXTERNAA LESQUERRA.3. I si finalment fent la consulta en la que volemveure totes les vendes i noms els clients alsque les hem fet aquestes vendes.COMBINACI EXTERNA A LA DRETA.A travs dun exemple observarem les diferents combinacions:Tenim dos taules: tClients amb 18 registres i tVendes amb 14 registres, i plantegemles segents consultes:R E L A C I O N STipus de combinaciCombinaci interna: aquest tipus de combinaci mostra tots els registres on els campscombinats de les dos taules siguin coincidents.En lexemple es veu que noms apareixen elsclients als que sels ha fet alguna venda.R E L A C I O N S23/11/201028Tipus de combinaciCombinaci externa a lesquerra: aquest tipus de combinaci mostra tots elsregistresdelataulaqueestsituadaal costat esquerredelarelacii noms elsregistres que coincideixen amb els de la taula de la dreta.En lexemple es mostren tots el clients que tenimen la taula clients i noms els registres quecoincideixen de la taula tVendesR E L A C I O N STipus de combinaciCombinaci externa a la dreta: aquest tipus de combinaci mostra tots els registresdelataulaqueestsituadaal costat dret delarelacii nomselsregistres quecoincideixen amb els de la taula de lesquerra.Enlexempleesmostrentotes lesvendesque tenim en la taula de la dreta tVendes inoms el registres quecoincideixendelataula de lesquerra, tClientsR E L A C I O N S23/11/201029Qu s una consulta?Una consulta permet formular preguntes sobre les dades emmagatzemades a les taules.s la manera de dir al programa exactament quines dades volem visualitzar i de quinamanera han destar ordenades.Qu podem fer amb una consulta?Triar camps: de tots els camps que te una taula, decidir quins es volenvisualitzar. Triar registres: establir criteris de selecci de registres. Ordenar registres per un o diversos camps. Formular preguntes sobre dades de diverses taules Fer clculsQuantes taules podem utilitzar?Una o ms taules, si utilitzem ms duna taula han destar relacionades. En el cas queno ho estiguin podem relacionar-les en la consulta.Podem utilitzar consultes per fer consultes? SLes taules o les consultes de les que una consulta obt les seves dades es coneixen comel seu origen de registres.ConceptesC O N S U L T E STipus de consultesAcciSelecciSQLPer realitzar-les es necessita saber el llenguatge de programaci SQL1. Consulta de selecci: s el tipus ms simple, serveix per recuperar undeterminat conjunt de registres: el que coincideix amb els criteris quesespecifiquen.2. Consulta de referncies creuades: Mostra valors resumits (suma,cuenta y promedio) dun camp i els agrupa..3. Consulta per crear taules: Amb els registres resultants es crea unanova taula.4. Consulta dactualitzaci: Actualitza el contingut dels camps pel valorque sindica.5. Consulta de dades afegides: Afegeix els registres resultants dunaconsulta com a nous registres duna taula existent.6. Consulta deliminaci: Elimina els registres que compleixin unesdeterminades condicions.En realitat totes les consultes sn emmagatzemades per Access en llenguatge SQL, permostralaquadrculaQBEdelaconsultacadavegadaquesobrelaconsultaenvistadiseo.C O N S U L T E S23/11/201030Tipus de consulta: consultes de selecci1. Consulta de selecciConsultaqueformulaunapreguntasobrelesdadesemmagatzematsenlestaules i torna un conjunt de resultats en forma de full de dades sense modificarles dades de les taules.Ho podemfer duna taula: Consulta senzilla o de ms taules, consultescomplexes.C O N S U L T E S2. Consulta de totalsAccess 2007 permet contar dadesmitjanant unafiladeTotal enlataulaoconsulta, nomsshadobrir envistahojade datos, i afegir la fila de total,seleccionant una de les funcions dagregat:Cuenta, Suma, Mnimo, Mximo oPromedio.Realitzaremunaconsultadetotalsenllocduna fila Total, quan shagi de contar algunso tots els registres tornats per una consulta,iesnecessitiutilitzarelvalorresultantenaltre objecte de la base de dades com perexempleuninforme. Permetenfer clculsen grups de dades.3.Consultes de referncies creuadesEs tracta duntipus especial de consulta de totals, quepermet veure les dades de forma similar a un full de clcul.Presenta les dades de manera resumida i en un format fcildentendre.Resumeixels valors i, acontinuaci, els agrupaper dosconjunts de fets, unen la parte lateral, unconjunt deencabezados de filai unaltre enlapart superior unconjunt de encabezados de columna.Quan es crea una consulta de referncies creuades, sinclounormalment dades de ms duna taula i sinclou sempre trestipusdedades: lesdadesusadescom encabezados defila, les dades usades com encabezados de columna i elsvalors que es desitgem sumar o calcular dalguna forma.Tipus de consulta: consultes de selecciC O N S U L T E S23/11/201031Tipus de consulta: consultes de selecciC O N S U L T E SFUNCIONS DAGREGATSutilitzen en la fila de total o en les consultes de Totals i sn les segents:PROMEDIO: calcula el valor mig duna columna. La columna ha decontenir dades numriques, de moneda o de data i hora. La funci no t encompte els valors nuls.CUENTA: conta el nmero delements en una columna. Sutilitza en tots elstipus de dades, excepte en una columna de llista multivalor.MXIMO: torna lelement de major valor. Nmero, Moneda i Data/Hora.MNIMO: torna lelement de menor valor. Nmero, Moneda i Data/Hora.DESVIACIN ESTNDAR: mesura el grau de dispersi dels valorsrespecte a un valor mig. Nmero i Moneda.SUMA: suma els elements duna columna.VARIANZA: mesura la varincia estadstica de tots els valors de lacolumna. Nmero i Moneda.4. Consulta dactualitzaci: Per actualitzar un camp o diferents campsautomticament.3. Consulta de dades annexades:Sutilitza per afegir registres duna taula a una altra. Aquest tipus de consultapermet afegir dades encara que els camps de la taula no coincideixin amb els delaltra taula. Access afegeix les dades noms en el camps coincidents i ignora laresta.C O N S U L T E STipus de Consultes: consultes dacci1. Consulta de creaci de taula: Crea una taula a partir de les dadessollicitadesenunaconsulta. Aquest tipusdeconsultapot sertil peralesaccions segents: Crear informes que mostrin dades a partir dun punt concret en el temps. Fer una copia de seguretat de la taula Crear una taula histrica amb registres antics2. Consulta deliminaci: Per eliminar unasriederegistresquecompleixenunes determinades condicions, s ms til i rpid utilitzar una consultadeliminaci en comptes danar eliminant registre a registre.Aquesta consulta sempre elimina registres sencers, no noms determinatscamps.Les anomenem dacci perqu modifiquen les dades de les taules en les que es basen.23/11/201032Tipus de consultes: consultes SQLSELECT Clientes.Id, Clientes.Compaa, Facturas.[Id de factura], Facturas.FechaFROM (Clientes RIGHT JOIN Pedidos ON Clientes.[Id] = Pedidos.[Id de cliente]) LEFT JOIN Facturas ON Pedidos.[Id de pedido] = Facturas.[Id de pedido];C O N S U L T E SConsulta que consta duna instrucci SQLConsulta que utilitza loperador UNION per combinar els resultats de dos oms consultes de selecci.Lesconsultesdunicombinenlesdadesannexant filesenunconjuntderegistres que no es conserven desprs de tancar-se la consulta.Sutilitzaperenviarcomandamentsdirectament aun servidorde basededades ODBC. Permeten treballartreballar directament ambles taulesdelsservidor enllocdefer queel motor delabasededadesMicrosoft Jetprocessi les dades.cont instruccions DDL (llenguatge de definici de dades). No processa les dades sin que crea, elimina o modifica altres objectes de la base de dades.Les consultes SQL no es poden obrir en vista diseo.Exemple dinstrucci SQLQuan es fa servir sovint la mateixa consulta de selecci per canviant elscriteris cada vegada que sexecuta, s ms prctic utilitzar les consultes deparmetres.Quansexecutaunaconsultadeparmetres, es demana cadavegada elcriteri o els criteris pels quals es vol filtrar la informaci.Per definir-les sha de posar en criteris els claudtors [ ]Per exemple: [Quina categoria?]. El text i el signe dinterrogaci que hi hagientre els claudators no s determinant, noms serveix per indicar que esvol saber.Tipus de consultes: consultes de parmetresC O N S U L T E SParmetre23/11/2010333. Consultes per cercar duplicatsLes consultes per cercar duplicats sencarreguen de cercar, en taules o consultes, valors que es repeteixen.4. Consultes de no coincidentsCercant dades duna taula que no coincideixen amb les delaltra. Sutilitzasobretot quanes volenrelacionar taulesamb integritat referencial, ja que permet detectar elsregistres que no la compleixen.1. Consultes senzilles: Per crear consultes de manera fcil.2. Consultes de referncies creuades. Ja shan explicat.L assistent per a consultesLassistent per a consultes facilita la creaci de forma rpida de:1. Consultes senzilles2. Consultes de referncies creuades3. Consultes per cercar valors duplicats4. Consultes de no coincidentsC O N S U L T E SServeix per executar la consultaC O N S U L T E SAccess 2007: Cinta dopcionsOBSERVACI:Hi hadifernciaentreexecutarunaconsultai veure-laenvistahojadedatos, aixsimportant sobretot en les consultes dacci. Unaconsulta executada i confirmada ja no pot tornarenrere, per si noms lobrim en vista hoja de datos,no passa res.23/11/201034C O N S U L T E SAccess 2007: Crear una consultaC O N S U L T E SAccess 2007: Crear una consultaTriem eltipus de consulta que volem crear, es pot fer directament en lacinta dopcions en disseny o b clicant sobre lrea de consulta amb el botdret del ratol, apareix un men emergent on es pot seleccionar el tipus deconsulta.23/11/201035Access 2007: Crear una consultaC O N S U L T E SQUADRCULA QBE(Query by example)(Consulta segons un exemple)CAMPO: El nomdel campque sutilitza en la consulta.TABLA: El nomdelatauladon sha agafat el camp.ORDEN: Indica el ordreascendent odescendent permostrar les dades.MOSTRAR: Si est activat elcamp apareix en la consulta.CRITERIOS: establir elscriteris de recerca en laconsulta.O:Altres criteris o condicionsderecerca. sunacondicique sestableix pel camp.C O N S U L T E SResultat de la consultaAccess 2007: Crear una consultaNoms mostra les vendes des de l1 de febrer de 2005 a clients de Gav o Sabadell.SELECT tVendes.IdVenda, tVendes.Datavenda, tClients.Nomemp, tVendes.PobdestiFROM tClients INNER JOIN tVendes ON tClients.IdClient = tVendes.IdClientWHERE (((tVendes.Datavenda)>=#2/1/2005#) AND ((tVendes.Pobdesti)="Gav")) OR(((tVendes.Pobdesti)="Sabadell"))ORDER BY tVendes.IdVenda;SQLDisseny de la consulta23/11/201036Una de les finalitats de les consultes s saber quins sn els registres quecompleixen una determinada condici. CRITERISEn els criteris podem escriure expressions, les quals es poden escriuredirectament a la quadrcula o mitjanant el Generador de expresiones, aquestltim es ms til quan les expressions sn complicades, per les senzilles s millorescriure-les directament.ConcepteE X P R E S S I O N SEXPRESSI:Qualsevol combinaci doperadors matemtics olgics, constants, funcions i noms de camps,controls i propietats que avalua a un nic valor. Lesexpressions poden realitzar clculs, manipularcarcters o provar dades, sutilitzen en moltesoperacions de Microsoft Access, con la creaci decontrols i camps calculats, criteris de consultes ifiltres, valors predeterminats, regles de validaci icondicions de macros.EnAccess, sutilitzenexpressionsquanesnecessitarealitzarqualsevol de les segents tasques:1. Calcular valors que no existeixen directament en lesdades.Es pot calcular valors pels camps de taula, consultes icontrols de formularis i informes.CAMP CALCULAT: Es crea un camp calculat quan esnecessita realitzar clculs amb dos o ms camps de taula.Exemple:Total Factura: [Import]+[IVA]2. Definir un valor predeterminat per un camp de taula oun control en un formulari o informe.3. Crear una regla de validaci. Les regles de validacicontrolen quins valors els usuaris poden especificar enun camp o control.4. Definir criteris per una consulta.Quan sutilitzen les expressions?E X P R E S S I O N S23/11/2010371. Els noms dels camps, de les taules, de les consultes, delsformularis, dels informes o dels controls, han danar sempreentre claudtors [ ]Exemple: [tActor]![NomAct]2. Les dates shan descriure entre coixinets # #Exemple: #02/01/2008#3. El text sha descriure entre cometes Exemple: Barcelona4. Les expressions dels controls calculats sempre han danarprecedits pel smbol =Exemple: =Promedio([Total Facturat])SUGGERIMENT:s molt til utilitzar el zoom per escriure una expressi. Bot dret del ratol.Normes per introduir les expressionsE X P R E S S I O N SOPERADORSSigne o smbol que especifica el tipus de clcul quesha de dur a terme en una expressi. Hi ha diferentstipus doperadors com es veur ms endavant.IDENTIFICADORSEls noms dels camps de taula o de controls enformularisoinformes, opropietatsdelscampsocontrols.FUNCIONS Sn procediments integrats. Una funci torna unvalor basat en el resultat dun clcul u altra operaci.LITERALS o VALORS Sn dades de text, nombres o dates, que es tractental com s'han escrit.CONSTANTSRepresentacions duns valors que no es podencanviar. Per exemple: Verdadero, Falso i Nulo,definides automticament per Access.E X P R E S S I O N SElements duna expressiOperadorsIdentificadorFunciLiteral23/11/201038SIMBOLS SERVEIXEN+- * / Suma, resta, multiplicaci i divisi.\ Divisi que dna com a resultat un nmero senser.ResiduoDivideix dos nmeros i dna com resultat el resto. ^ Per elevar un nmero a una potncia.= Igual a alguna cosa.< Menor a alguna cosa.> Major a alguna cosa.= Major o igual a alguna cosa. Diferent a alguna cosaEntreyDeterminar si el valor de lexpressi es troba dins un rang de valors especificatsYVeure si els dos valors sn certs. OVeure si un o laltre valor es cert.NEGADO No es certEqv s cert tant si l'expressi1 o l'expressi2, sn certes o b si sn falses.OEx s cert si l'expressi1 s certa o l'expressi2 s certa, per no ambdues.Concatenaci:El signe + fa la mateixa funci.&+ Combina dues o ms cadenes en una sola.Coincidncia de caractersComoPer comparar dues cadenes de carcters de text. El resultat s cert si el text i el model sn iguals, en cas contrari s fals. EnDeterminar si el valor de lexpressi s igual a un o a diversos valors d'una llista especificada. Es Nulo Veure si el registre est buit, s a dir no tenen cap valor en aquest campNo es nulo Veure que el camp no s nul, s a dir els registres tenen un valor en aquest camp.?Aquest signe representa un carcter. Per exemple si volem una paraula de 3 lletres i la primera s una M, hauriem d'escriure: M??Per comparartext, nombres o datesALTRESNo sn exactament operadors segons Microsoft Access, per sn molt utilitzats en els criteris de les consultes.TIPUS OPERADORSARITMETICSCOMPARACIPer combinar dues expressions que es poden avaluar com a certes o falses en una sola expressiLGICSPer fer operacions: suma, resta, multiplicaci, divisi i potenciaElements duna expressi: Els operadorsE X P R E S S I O N SElements duna expressi: Els identificadorsE X P R E S S I O N S S utilitzen per fer referncia al valor dun camp, dun control o dunapropietat. Sn les denominacions amb les quals lAccess coneix els diferentsobjectes que pot tenir una BD: taules, consultes, formularis, informes... Els identificadors poden contenir:1. El nomde lobjecte: [tClients]2. El nom duna propietat: [tClients]![Poblacio].ValorPredeterminado Sn operadors identificadors:El punt .Lexclamaci !Els claudtors[ ]En lexemple delpunt 2, elsigne dexclamaci indica a Access que elquesegueixsunobjecteper pertanyalacollecciespecificadadavant delsigne, enaquest caslestindicant queel campPoblacisdelataulaclients.23/11/201039True o Verdadero True o Verdadero True o Verdadero True o VerdaderoCertFalse o Falso False o Falso False o Falso False o Falso FalsS S S S ActivadaNo No No No DesactivadaNuloIdentifica els registres que presenten labsncia dun determinat valor. Indica un valor del que se sap que est buitUna constant, representa un valor numric o de cadena que no canvia.Els literals, sn dades de text, nombres o dates que el programautilitza de la manera com estan escrits, sense tractar-los com unaexpressiElements duna expressi: Les constants i LiteralsE X P R E S S I O N SOBSERVACI: Sha danar en compte al utilitzar NULO, ja que si lutilitzemamb un operador de comparaci, es genera un error. s millor utilitzar Esnulo o No es nulo, quan fem comparacions.MatemtiquesFan clculs matemtics, trigonomtrics, etc.De Data i Hora Fan operacions amb les datesFinanceresFan clculs financers, com les amortitzacions de prstecs, clculs dinteressosEstadstiquesFan clculs estadstics sobre un conjunt de valors que venen de consultes, formularis o informes, o b sobre valors que s'indiquen directament amb els mateixos arguments de la funci.De conversiServeixen per canviar el tipus duna variableCadenesManipulen cadenes de text per donar-los format o per obtenir dadesPer crear una expressi, es necessita utilitzar funcions, operadors iconstants. Sneinesqueel programaposaadisposicidel'usuari perobtenir el resultat de clculs i operacions ms o menys complexes.Algunes funcions requereixen arguments. Un argument s un valor que proporcionadades a la funci. Siuna funci requereix ms dun argument, els arguments vanseparats per coma (,)OBSERVACI: Access incorpora moltes ms que les indicades en lanterior taula. Es recomana veure OBSERVACI: Access incorpora moltes ms que les indicades en lanterior taula. Es recomana veure OBSERVACI: Access incorpora moltes ms que les indicades en lanterior taula. Es recomana veure OBSERVACI: Access incorpora moltes ms que les indicades en lanterior taula. Es recomana veure- -- -les. les. les. les.Elements duna expressi: Les funcionsE X P R E S S I O N S23/11/201040Exemples de funcionsFunci Significat Sintaxi: ExemplesAhora Torna un valor que especifica la data i la hora actual conformea la data i hora del sistema de lequip informtic.=Ahora()Fecha Torna una dada que cont la data actual. Anys Treballats: (Fecha()-[t_Plantilla]![DataAlta])/365DifFecha Sutilitza per determinar la diferncia entre dues dates, normalment entre una data obtinguda mitjanant un identificador de camp i la data obtinguda mitjanant la funci Fecha.Dies Prestec: DifFecha("d";[Datallo];[Datadev])Raiz2 Calcula larrel quadrada dun nmero. Raz2([t_Categories]![SouBase])=Raz2([t_Categories]![SouBase]) Redondear Arrodoneix un nmero, segons els decimals que sindiquin =Redondear([Arrel];2)SinDec Treu els decimals dun nmero. =SinDec([Arrel])SiInm Per avaluar una expressi com verdadera o falsa i, a continuaci, tornar un valor especificat si l expressi s verdadera i altre valor si lexpressi s falsa. Aquesta funci t tres arguments.=SiInm([Sou Brut]>=1500;[Sou Brut]*12/100;[Sou Brut]*9/100)CMoneda Converteix en moneda una dada numrica. =Cmoneda([Quantitat]*[Preu])Izq Per extreure els primers n carcters dun valor que apareix en un camp de texto.=Izq([Producte],2]Der Per extreure els ltims n carcters dun valor que apareix en un camp de texto.=Der([Producte],3]Promedio Per mostrar el promig dels valors dun camp de taula o control.=Promedio([Sou])Nz Canvia un valor nulo (valor sense definir o desconegut) a 0 en un camp.=Nz([Preu])OBSERVACI:Access proporciona al voltant de 141 funcionsorganitzades per categories.Elements duna expressi: Les funcionsE X P R E S S I O N SEls formularis sn els objectes de la BDque permeten afegir,modificar i visualitzar les dades duna taula o consulta.Els formularis sutilitzen sovint per veure un sol registre per pantalla.Es poden considerar com finestres mitjanant les quals els usuarispoden veure i accedir a les bases de dades.Un formulari fa que sigui ms atractiu el procs dintroduir dades iredueix la probabilitat de cometre errades al introduir-les.F O R M U L A R I SConcepteEn la cinta dopcions, en fitxa Crear23/11/201041F O R M U L A R I SVeure un formulariComes veuel formulari,no es pot fer canvis alscontrols.Es veu de forma moltsimilar aVistaformulario,per permet fer algunscanvis en el disseny delformulari.s pot veure, la estructuradel formulari i permet fertots els canvis.Elements dun formulari: ExempleF O R M U L A R I S23/11/201042F O R M U L A R I SParts dun formulariEncapalament del formulari, es pot introduir ttol formulari, dates, botons, etc. Noms apareix en la primera pginaDetalle del formulari: Mostra tots els registres que cont la taula. Segons el disseny ensenya ms o menys camps.Peu de formulari. Pot incloure informaci com instruccions del formulari, algun tipus de clcul.Encapalament de pgina. Noms es veu en els formularis impressos. Per a ttols o informaci a repetir a cada pginaPeu de pgina. Noms es veu en els formularis impressos. Shi pot afegir el nmero de pgina o qualsevol informaci.Nom del formulariOBSERVACI: Els encapalaments i peus es poden amagar, sha de fer en la fitxa organitzar tenint el formulari obert.F O R M U L A R I STipus de formularisFormularis de varies pgines: quan es tinformacide cadaregistreiesvolmostrar en un formulari.Formularis continus: s til quan de cada registre es t pocs camps de dades. Enlloc de mostrar noms un registre cada vegada, mostra diferents registres un enrerede laltre.Formularis dividits: aquest tipus s nou en Access 2007, i permet mostrarsimultniamentunregistreenunavistadeformularinormal i veureunallistaderegistres en la vita Hoja de datos.Subformularis:Sn formularis dins dun altre formulari. Tots dos estan vinculats, de manera que elsubformulari noms mostraels registres queestanrelacionats ambel formulariprincipal.Es creen amb dues taules, que han destar relacionades de 1 a varis, i el formularirepresenta la part u i el subformulari la part varis.Formularis emergents:Formularis modals:23/11/201043Control Depenent: sn controls que tenen com origen de dades camps dunataula o una consulta. Per exemple la data de naixementdun alumne, emmagatzemada a la taula tAlumnes.Control Independent: sn els que no tenen origen de dades, sutilitzen permostrar informaci, lnies, rectanglesi imatges. Unaetiqueta que mostra el ttol dun formulari s un controlindependent, el logotip duna empresa en un informe.Control calculat: s un control que t per origen de dades una expressi. Perexemple: =[PreuArt]*0,16Elements dun formulariF O R M U L A R I SEls controls mostren dades, realitzen accions i permeten veure i treballar amb informaci que millora laspecte.TIPUSEtiqueta: Crear controls amb text fix. Bot de comandament: Per iniciar una acci o srie daccions.Quadre de text: Per crear i visualitzar camps de text, nmeros, dates i hores, memoQuadre combinat: cont una llista de possibles valors pel control i un quadre de text editable.Subformulari: Per inserir un formulari dintre daltre formulari.Quadre de llista: s una llista en la qual podem escollir els valors que vulguem. Rectangle: Afegir rectangles de colors o buits al formulari millorar laparena.Lnia: Afegir lnies i millorarla seva aparenaMarc dobjecte dependent:un objecte OLE de dades.Elements dun formulari: ControlsF O R M U L A R I STtol: per crear un control detiqueta en la secci de encapalament del formulariNmero de pgina: inserir nmero de pgina en el encapalament o peu del formulari(imprimir)Data i hora: inserir la data i/o lhora en el encapalament del formulari.Logotip: inserir en un formulari una imatge en lencapalament del formulari23/11/201044Control fitxa: crear una serie de pgines en el formulari en forma de fitxes.Bot dalternar: Per crear control del tipus Si/NO, Activat/Desactivat, Cert/FalsSalt de lnea Afegir un salt de pgina entre les mltiples pgines dun formulari.Grup dopcions: Sutilitzen per presentar un conjunt limitat dopcions, noms una activadaBot dopci: Per crear control del tipus Si/NO, Activat/Desactivat, Cert/FalsCasella de verificaci: Per crear control del tipus Si/NO, Activat/Desactivat, Cert/FalsElements dun formulari: ControlsF O R M U L A R I SInserir pgina: afegir una fitxa al control fitxa.Imatge: Per afegir una imatge esttica en el formulariMarc dobjecte independent: afegir un objecte procedent daltra aplicaciInserir grfic: afegir un grfic a la quadrcula del formulari.Inserir hipervincle:inserir un hipervincle a un control detiqueta a la quadrcula.Dades adjuntes: per inserir un control de dades adjuntes en la quadrcula del formulari.Punter: Eina per seleccionar, canviar la dimensi i editar controls.Assistent pels controls: Activat ajuda a introduir les propietats dels controls.Inserir control ActiveX: mostrar tots els controls ActiveX que estan installats en el sistema.Elements dun formulari: ControlsF O R M U L A R I SMen grossor de lnea: per canviar el grossor de la lnea seleccionada.Men tipus de lnea: per canviar el tipus de lnia seleccionada.Men color de lnea: per canviar el color de lnia seleccionada.Definir valors predeterminats dels controls: per canviar les propietats dels controls.Men efecte especial:per canviar laspecte del control, relieve, gravat, sombreijat, etc.Seleccionar tot: per seleccionar tots els controls de la quadrcula de disseny.23/11/201045IMPORTAR-VINCULARAFEGIR DADES A LES TAULESIntroduirlesdadesenunataulaespot ferdirectament omitjanantunformulari, per es pot donar elcas que es disposide les dades en altresarxius de diferent extensi o en altres bases de dades ja sigui del mateixAccess o altres programes.IMPORTAR: consisteix en copiar dades dun arxiu de text, full de clcul otaula de base de dades en una taula dAccess. Es pot utilitzar les dadesimportadespercrearunataulanovaob, espodenafegiraunataulaexistent que tingui una estructura de dades coincident.VINCULAR: taula emmagatzemada en un arxiu fora de la base de dadesoberta o base de dades amb la que es treballa, a la que es te accs alaregistres des dAccess. El poden afegir, eliminar i editar registres per no espot canviar la seva estructura.PerpoderferaquestesoperacionsAccessutilitzauncontroladorODBC(Connectivitat oberta de bases de dades) que s el mtode estndard percompartir dades entre bases de dades i programes.Els controladors ODBCutilitzen el llenguatge de consulta estructurat(SQL) per obtenir accs a dades externs.IMPORTAR O VINCULAR DADES?IMPORTAR-VINCULARAFEGIR DADES A LES TAULES Si larxiuquees necessitas relativament petit i noesmodificat amb freqncia pelsusuaris de laltra aplicaci. No es necessita compartirles dades quees creanambusuarisdelaltraaplicacidebase de dades. Necessita el millorrendiment. Access treballamillor amb una copia localdeles dades.IMPORTARVINCULAR Si larxiu que es necessitas ms gran que la capacitatmxima duna base dedades local dAccess (2Gb) Larxiu s modificatfreqentment per usuaris delaltraaplicacidebasededades. Ha de compartir les dadesduna xarxa amb usuaris delaltraaplicacidebasededades.23/11/201046Arxius que es poden importarAFEGIR DADES A LES TAULESEls arxius que es poden importar a Access sn els segents:Extensions darxius Programa que el generamdb, accdbx Accessxls, xlsx Full de clcul Exceltxt Bloc de notesxmlODBC SQL ServerHTMLdbf dBasedb Paradoxwk3 Lotus 123csvArxius que es poden importarAFEGIR DADES A LES TAULESEls arxius de text Un arxiu de text cont carcters sense format. Access admet les segentsextensions: txt, csv, asc itab. Elsarxius detext correctament organitzatssn:Damplada fixa:cadaregistreapareixenuna lnea diferent ilampladadecadacamps constat en tots elsregistres.Delimitats:cada registre apareix enuna lnea diferent i elscamps estan separats perun nic carcter anomenatdelimitador, per exempletabulacions, punt i coma,comes, espais, etc.