referat, referate , referat romana, referat istorie, referat geografie, referat fizica, referat engleza, referat chimie, referat franceza, referat biologie
 
Astronomie Istorie Marketing Matematica
Medicina Psihologie Religie Romana
Arte Plastice Spaniola Mecanica Informatica
Germana Biologie Chimie Diverse
Drept Economie Engleza Filozofie
Fizica Franceza Geografie Educatie Fizica
 

Baza de date Microsoft Acces

Categoria: Referat Informatica

Descriere:

Microsoft Access 2003 este aplicaţia de management al bazelor de date pusă la dispoziţie de suita Microsoft Office. Spre deosebire de Excel, Access va permite să stocăm şi să administrăm volume mari de date, organizate în unităţi numite înregistrări. O bază de date Access constă din următoarele obiecte:...

Varianta Printabila 


1                                             Introducere

       Microsoft Access 2003 este aplicaţia de management al bazelor de date pusă la dispoziţie de suita Microsoft Office. Spre deosebire de Excel, Access va permite să stocăm şi să administrăm volume mari de date, organizate n unităţi numite nregistrări. O bază de date Access constă din următoarele obiecte:

•    Tabele – conţin toate nregistrările
•    Interogări – localizează nregistrări specifice
•    Formulare – afişează nregistrările din tabele, una cte una
•    Rapoarte – tipăresc loturi de nregistrări
•    Pagini de acces la date – pun la dispoziţie date prin intermediul paginilor Web
•    Macrocomenzi – acţiuni automate uzuale
•    Module – stochează declaraţii si proceduri Visual Basic, care ne permit să scriem programe pentru bazele de date, astfel nct acestea să poată interacţiona cu alt software.

        Utilitarele de asistenţă din aplicaţia Access asigură un proces simplu, pas cu pas, de configurare a tabelelor, formularelor, paginilor de acces la date, rapoartelor şi interogărilor.
      Prezenta lucrare conţine 5 paragrafe.
  1 conţine noţiuni de baze de date,tipuri BD.  O bază de date (BD) reprezintă o colecţie de date integrată, anume structurată şi dotată cu o descriere a structurii şi a relaţiilor dintre date.
  2 conţine caracteristica generală a SGBD Access.
  3 conţine  tabelele Access ,care  n baza lor se definesc celelalte clase de obiecte.
  4  conţine funcţii Access.
Ultimul conţine interogări Access care include şi subpunctele interogări de selecţie,de sortare, de actualizare a datelor,de excludere a nregistrărilor, de grupare şi totalizare şi interogări ncrucişate.













                  C U P R I N S

1    Noţiune de bază de date.Tipuri de BD.    3

2   SGBD Access. Caracteristica generală    5

3 Tabele Access.    8

4 Funcţii Access    18

5  Interogări Access    20
         5.1Interogări de selecţie a nregistrărilor(Select Query  
                
              .1    Noţiune de bază de date.Tipuri de BD.

   Printre multiplele forme de organizare a datelor, bazele de date ocupă un loc aparte.
   O bază de date (BD) reprezintă o colecţie de date integrată, anume structurată şi dotată cu o descriere a structurii şi a relaţiilor dintre date.
n funcţie de modul de organizare a informaţiilor, se cunosc cteva modele de BD:
ierarhic (arborescent), reţea, relaţional ş.a.
  Modelul ierarhic.Cu ajutorul modelului conceptual ierarhic, schema bazei de date poate fi reprezentată sub forma unui arbore n care nodurile exprimă colecţii de date, iar ramurile reflectă relaţiile de asociere ntre nregistrările colecţiilor de date superioare şi inferioare.
  Accesul la nregistrările colecţiilor de date inferioare se face prin traversarea arborelui, adică se parcurg toate colecţiile aflate n subordonare ierarhică dintre colecţia – rădăcină şi colecţia cercetată. Unui element superior i pot corespunde unul sau mai multe elemente inferioare, iar unui element inferior i corespunde un singur element superior.
 Modelul reţea. Modelul reţea se aseamănă cu cel ierarhic, diferenţa constnd n aceea că unui element inferior i pot corespunde unul sau mai multe elemente superioare.
 Modelul relaţional. Modelul relaţional este n prezent cel mai răspndit model de baze de date. Acest model are o singură structură de date: relaţia sau tabelul. O bază de date relaţională este un ansamblu de relaţii (tabele) grupate n jurul unui subiect bine definit. Deci, o relaţie poate fi redată printr-un tabel, n care fiecare rnd reprezintă o nregistrare diferită, iar fiecare coloană un atribut. Coloanele tabelului sunt identificate prin nume diferite şi reprezintă cmpurile (atributele, caracteristicile) modelului conceptual. n fiecare coloană datele trebuie să fie de acelaşi tip. Căutarea n acest model de BD se face secvenţial toate articolele şi comparnd criteriile de căutare. Articolele ce satisfac conditiei căutării se selectează şi pot fi afişate.
 Subiectele pe care se axează tabelele unei BD pot fi cele mai diverse: activitatea unei firme, stocarea mărfurilor la un depozit, rezultatele unui recensămnt,etc. Deşi n modelul relaţional principala structură de date o reprezintă tabelul, o bază de date este mai mult dect o simplă mulţime de tabele.Pe parcurs vom vedea că ntre tabelele bazei de date există o interdependenţă strnsă, n timp ce ntre tabelele de calcul obişnuite această interdependenţă practic lipseşte.
 
  Gestiunea bazelor de date.

Sistemul de gestiune a bazelor de date (SGBD) este acel sistem de programe care facilitează şi supervizează introducerea de informaţii n baza de date, actualizarea şi extragera din bază, controlul şi autorizarea accesului la date. Un sistem de gestiune a bazelor de date trebuie să fie capabil să ndeplinească următoarele funcţii:
    de descriere ,care rezidă n definirea structuriidatelor, a relaţiilor dintre acestea şi a condiţilor de acces la informaţile conţinute n baza de date;
    de actualizare, care presupune inserarea, redactarea şi suprimarea datelor;
    de interogare a BD, care permite obţinerea diferitor informaţii din BD conform unor criterii de căutare;
    de obţinere de date noi, care constă n prelucrarea informaţiei iniţiale n scopul obţinerii unor totaluri, medii etc.;
    de ntreţinere, care constă n crearea copiilor de rezervă, compactarea BD şi repararea ei n cazul deteriorării;
    de securitate a datelor, care rezidă n protejarea BD mpotriva accesului neautorizat şi n atribuirea drepturilor de acces.

 Administrarea bazelor de date.
 
 Administrarea BD presupune coordonarea lucrărilor de proiectare a BD, protecţia (securitatea) informaţiei, dezvoltarea BD,etc. Aceste funcţii le ndeplineşte Administatorul Bazei de Date (ABD). El defineşte obiectele sistemului , elaborează principiile de protecţie a datelor, răspunde de alegerea şi implimentarea SGBD, asigură funcţionarea normală a sistemului.

    























           
                     . 2   SGBD Access. Caracteristica generală

  La nceputul anilor 80 s-a produs o trecere n masă la elaborarea şi utilizarea sistemelor de gestiune a bazelor de date de tip relaţional.Acest fenomen se explică prin atingerea unor limite tehnice şi prin flexibilitatea redusă a sistemelor de gestiune a bazelor de date cu structuri arborescente şi reţea care se foloseau pnă atunci .nzestrate cu limbaje de generaţia a patra şi cu generatoare de aplicaţii puternice , SGBD de tip relaţional oferă numeroase facilităţi de proiectare şi dezvoltare a aplicaţilor .Cele mai răspndite SGBD de acest tip sunt: Oracle, Informix, SyBase, MySQL, Interbase, Access, acesta din urmă fiind subiectul capitolului de faţă.
  Sistemul de gestiune a bazelor de date MS Access 2003 (şi versiunile care l-au precedat) a fost realizat de corporaţia Microsoft şi reprezintă o nouă ideologie n acest domeniu, avnd performanţe sporite.
    Lansarea sistemului MS Access 2003
SGBD MS Access funcţionează numai n mediul Windows. Există mai multe modalităţi de lansare a sistemului Access, una din ele fiind executarea consecutivă a acţiunilor Start/All Programs(sau Programs)/Microsoft Office/Microsoft Office Access 2003.
Ca rezultat, obţinem o fereastră, asemănătoare cu cea din figura 1.

 

                         Figura 1. Lansarea sistemului Access
Crearea / accesarea unei baze de date
   După cum am  mai menţionat, elementele principale ale unei baze de date sunt tabelele. Dar o bază de date poate conţine şi alte elemente care se creează pe baza tabelelor (interogări, formulare, rapoarte etc.). Aceste elemente, mpreună cu tabelele, formează aşa-numitele clase de obiecte ale bazei de date.
   Pentru a crea o bază de date nouă, n zona Open a ferestrei reprezentate n figura 1 alegem opţiunea Create a new file, iar n caseta urmatoare - opţiunea Blank Database. Putem, de asemenea, utiliza comenzile de creare/accesare a bazelor de date din meniul File.
 
                                     Figura .2
  Pentru a deschide o bază de date existentă n zona Open a ferestrei reprezentate n figura 1 executăm un clic pe denumirea uneia din bazele de date utilizate recent sau selectăm opţiunea More pentru a accesa o bază de date amplasată pe un dispozitiv de memorie auxiliară. n caseta de dialog care apare indicăm numele BD
 
                                       Figura.3
 (de ex., BIBL) şi localizarea ei (discul, dosarul).Obţinem o fereastră n care sunt disponibile cele 7 clase de obiecte Access.

 
            Figura. 4 Fereastra cu clasele de obiecte Access

nchiderea / redeschiderea bazei de date
   nchiderea unei baze de date poate fi făcută prin executarea comenzii Close din meniul File sau prin acţionarea butonului   din bara de titlu a bazei de date. De regulă, la nchidere, sistemul salvează automat baza de date mpreună cu toate obiectele pe care le conţine. nchiderea unei  baze de date nu nseamnă şi nchiderea aplicaţiei MS Access, astfel nct putem deschide o altă de date sau crea o bază de date nouă, n modul descris mai sus.

Ieşirea din Access
   Ieşirea din MS Access poate fi făcută n unul din următoarele moduri:
•    se apasă combinaţia de taste Alt+F4;
•    se execută comanda Exit din meniul File;
•    se acţionează  butonul   din bara de titlu a aplicaţiei
 
                                      .3 Tabele Access.

     Crearea unui tabel
După ce am deschis o bază de date , eveniment confirmat prin apariţia ferestrei cu cele 7 clase de obiecte (fig.4) , putem crea diferite obiecte n oricare din clasele nominalizate. Dar deoarece fiecare din clasele Queries, Forms, Reports, Pages, Macros şi Modules se definesc n baza tabelelor, acestea (tabelele) trebuie create n primul rnd. Cu alte cuvinte, dacă o BD nu conţine cel puţin un tabel, crearea altor clase de obiecte devine lipsită de sens.
  Pentru a crea un tabel nou ,de exemplu, Comenzi, selectăm clasa de obiecte Tables, apoi acţionăm butonul    . Caseta de dialog New Table care apare (fig.5) ne oferă 5 moduri de definire a structurii tabelului.

              
             Figura.5 Moduri de definire a structurii unui tabel

Dacă selectăm opţiunea Design View şi acţionăm butonul OK, obţinem o fereastră
(fig.6) n care definim cmpurile tabelului şi caracteristicile lor.

 
      fig.6.Definirea cmpurilor tabelului Comenzi  
 Caracteristicile cmpurilor
  Pentru fiecare cmp al tabelului se specifică 3 caracteristici, şi anume:
•    Field Name (denumirea cmpului, obligatoriu);
•    Data Type (tipul cmpului, obligatoriu);
•    Description (descrierea cmpului, opţional).
   Pentru comoditate, denumirile cmpurilor se introduc pe verticală, urmnd ca n regimul de introducere a datelor Datasheet View  denumirile cmpurilor să-şi ocupe poziţiile obişnuite (pe orizontală). Regimul Design View nu permite introducerea nregistrărilor n tabel, ci doar descrierea cmpurilor care alcătuiesc tabelul.
   Denumirea cmpului poate conţine diferite caractere, inclusiv spaţii, cu excepţia unor semne speciale ( ".", "!" ş.a.). n caz de necesitate, denumirea poate conţine semnul "_" (subliniere). Lungimea denumirii cmpului (mpreună cu spaţiile) nu poate depăşi  64 de caractere.
Exemple: autorul;Id_ ţării; locul_ de_ muncă;   LoculDeMuncă; Locul de Muncă.
  Tipul cmpului poate fi unul din următoarele:
•    Text - pentru texte sau numere care nu vor fi folosite n calcule;
•    Memo - pentru texte lungi (biografia autorului, rezumatul cărţii etc.).
•    Number - pentru numere care vor fi folosite n calcule;
•    Date/Time - pentru date calendaristice;
•    Currency - pentru valori băneşti;
•    AutoNumber - pentru numere ntregi care şi măresc n mod automat valorile (numărul de ordine, de exemplu);
•    Yes/No - pentru valori logice care pot lua numai două valori: Yes (adevăr), No (fals);
•    OLE Object - pentru imagini (fotografia autorului), sunete (imnul ţării).
•    Hyperlink - pentru adrese Hyperlink. Valorile acestui cmp pot fi adrese Internet (de exemplu, www.google.com) sau locaţii (calea spre un fişier
sau dosar din calculator)
•    Lookup Wizard - reprezintă, de fapt, nu un tip de date, ci o proprietate a cmpului prin care valorile lui pot fi selectate din alt tabel. Acest mod de abordare simplifică procedura introducerii valorilor cmpului şi, n plus reduce riscul comiterii unor erori.
   Pentru a schimba tipul cmpului (implicit tipul este Text), trecem n coloana Data Type (fig.6) şi din lista derulantă alegem tipul dorit. Apoi trecem (dacă e cazul) n coloana Description, pentru a introduce note explicative, sau n rndul următor, pentru descrierea altui cmp.
 
  Stabilirea cheilor primare
   Dacă valorile unui cmp sunt unice (nu se repetă), putem semnala acest lucru, pentru a evita introducerea accidentală a două valori identice. Această procedură poartă denumirea de stabilire a cheii primare, n cazul tabelului CITITORI, cheia primară poate fi stabilită pe cmpul IdCarte, pentru a exclude eventualitatea repetării identificatorului cărţii (n bibliotecă nu pot exista două cărţi cu acelaşi identificator). Cheia primară poate fi stabilită şi pe cteva cmpuri. Pentru a stabili cheia primară, selectăm cmpul respectiv, apoi executăm un clic pe butonul         din bara cu instrumente. Ca rezultat, n partea din stnga a cmpului respectiv apare semnul cheii (vezi fig. 6).
    După ncheierea procedurii de descriere a cmpurilor şi de stabilire a cheii primare, salvăm tabelul (descrierea lui), selectnd comanda Save din meniul File şi indicnd numele tabelului. Dacă nu am stabilit o cheie primară (acest lucru nu este obligatoriu), sistemul ne va avertiza, sugerndu-ne stabilirea cheii pe un cmp de tip AutoNumber. Pentru a confirma, acţionăm butonul Yes. n acest caz sistemul stabileşte automat cheia primară pe un cmp AutoNumber (dacă el există) sau creează suplimentar un asemenea cmp (dacă el nu există), stabilind pe el cheia primară. Pentru a renunţa la stabilirea cheii primare, acţionăm butonul No.

        Proprietăţile cmpurilor
   n afară de tipul cmpului, putem stabili şi unele proprietăţi ale sale, cum ar fi mărimea (lungimea), numărul cifrelor zecimale, formatul datei calendaristice etc. Fiecare tip de date are proprietăţi prestabilite, dar ele pot fi modificate, executnd un clic pe cmpul respectiv (fig. 6, partea de sus) şi modificnd valorile prestabilite care apar n partea de jos.
  Cmpurile de tip Text pot avea lungimi cuprinse ntre l şi 255 de caractere.   Implicit, mărimea cmpului este de 50, dar ea poate fi modificată n limitele amintite, n funcţie de lungimea maximă preconizată a valorilor cmpului respectiv.      Astfel, pentru IdCarte (identificatorul cărţii), modificăm mărimea cmpului din 50 (valoarea prestabilită) n 8 (valoarea necesară). La fel procedăm şi cu caracteristicile altor cmpuri.
    Menţionăm şi cu această ocazie, că pentru cmpurile ce conţin numai valori numerice (identificatori numerici), care nu vor fi folosite n calcule, vom prefera tipul Text n locul tipului Number. Acest mod de abordare va facilita ulterior căutarea informaţiei n baza de date.
    Cmpurile de tip Number au lungimi diferite n funcţie de opţiunea specificată pentru proprietatea Field Size.
    Opţiunea implicită pentru cmpurile de tip Number este, de regulă, Single, dar ea poate fi modificată, utiliznd comanda Options din meniul Tools. Pentru cmpurile de tip Number poate fi stabilită şi proprietatea Format, n care specificăm modul de afişare a valorilor (numărul cifrelor zecimale etc.).
   Cmpurile de tip Date/Time au lungimi variabile n funcţie de formatul datei/orei specificat pentru proprietatea Format a cmpului. De altfel, formatul de reprezentare a datelor calendaristice, la fel ca şi delimitatorii dintre dată, lună şi an, pot să difere de cele utilizate n această lucrare. Reprezentarea datelor ţine de modul n care a fost personalizat sistemul Windows.      Pentru a schimba formatul de reprezentare a datelor calendaristice (dar şi a orei, a numerelor şi a valutei), este necesar de a efectua setările respective, utiliznd aplicaţia Regional Options din meniul Control Panel al meniului de bază Start.
 
     Remarcă: Dacă anul este indicat cu 2 cifre, Access l    interpretează astfel:
pentru valorile din intervalul  00-29 se subnţelege anii 2000-2029; pentru valorile din intervalul 30-99 se subnţelege anii 1930-1999.

   Cmpurile de tip logic (Yes/No) ocupă n memoria calculatorului un octet şi pot fi reprezentate n 4 moduri, n funcţie de opţiunea specificată pentru proprietatea Format a acestui cmp, şi anume: Yes/No, True/False, On/Off, -1/0. n ultimul caz valoarea - l corespunde stării True (adevăr), iar valoarea 0 - stării False (fals).
     
     Specificarea valorilor prestabilite
  Dacă o bună parte din valorile unui cmp se repetă frecvent (de exemplu, n cazul cnd majoritatea cititorilor au studii superioare), putem specifica o valoare prestabilită (implicită) a cmpului respectiv. Valoarea prestabilită (n cazul nostru "super") se specifică pentru proprietatea Default Value a cmpului. In procesul introducerii datelor sistemul atribuie cmpului valoarea prestabilită n mod automat, utilizatorul urmnd să modifice doar valorile care diferă de cea prestabilită.
        
     Stabilirea unor condiţii de validare
   Pentru a diminua riscul introducerii unor valori greşite, putem stabili condiţii (reguli) de validare pentru valorile cmpurilor respective. Regulile de validare se stabilesc pentru proprietatea Validation Rule a cmpului. Totodată, pentru proprietatea Validation Text se specifică mesajul care trebuie să fie afişat n cazul nerespectării regulii. Astfel, dacă se ştie că preţul cărţilor nu depăşeşte valoarea 200, specificăm pentru proprietatea Validation Rule a cmpului Preţ condiţia <=200, iar pentru proprietatea Validation Text -mesajul "Preţul cărţii nu poate fi mai mare de 200 de lei. Reintroduceţi preţul cărţii. La fel, data mprumutului/restituirii cărţii nu poate depăşi data curentă, astfel că pentru cmpurile DataImpr şi DataRestit putem stabili condiţia <=Date() pentru proprietatea Validation Rule. Mesajul specificat pentru proprietatea Validation Text va fi şi el adecvat. In fiecare din situaţiile descrise vor fi afişate mesajele respective n cazul introducerii unor valori care nu corespund condiţiilor de validare stabilite n procesul definirii cmpurilor.
      Modificarea descrierii unui tabel
  n cazul cnd apare necesitatea modificării descrierii iniţiale a unui tabel (adăugarea sau excluderea unuia sau mai multor cămpuri, schimbarea ordinii, modificarea unor caracteristici etc), deschidem tabelul respectiv n regimul Design View şi efectuăm modificările necesare după cum urmează (n orice consecutivitate):
a)    Modificarea denumirii cmpului. Executăm un clic pe denumirea cmpului şi efectuăm schimbările necesare.
b)    Adăugarea unui cmp. Marcăm cmpul, naintea căruia trebuie inserat noul cmp. Pentru aceasta executăm un clic n partea stngă a rndului respectiv, acesta schimbndu-şi culoarea. Apoi executăm comanda Insert Row din meniul Edit.
c)    Excluderea unui cmp. Marcăm cmpul ca n cazul precedent, apoi apăsăm tasta Delete. Confirmăm acţiunea prin OK.
d)    Schimbarea ordinii (deplasarea) cmpurilor. Marcăm cmpul care urmează a fi deplasat, apoi, ţinnd apăsat butonul stng al mouse-ului, deplasăm cmpul dat peste cmpul, naintea căruia dorim să fie situat.
e)    Schimbarea caracteristicilor. Executăm un clic pe rndul n care este definit cmpul, apoi stabilim caracteristicile cmpului n modul descris n paragrafele precedente. n cazul n care n tabel au fost introduse date,modificarea caracteristicilor cmpurilor tabelului poate implica denaturarea informaţiei. Astfel, dacă micşorăm lungimea unui cmp de tip Text, este posibilă trunchierea (din dreapta) a datelor. Modificarea tipului cmpului poate avea, de asemenea, consecinţe nedorite. Din această cauză ne vom strădui să definitivăm proprietăţile cmpurilor nainte de a introduce valori n tabel.
f)    Adăugarea sau anularea unei chei primare. n caz de necesitate, putem adăuga sau anula una sau mai multe chei primare. Pentru a schimba cheia primară de pe un cmp pe altul, selectăm cmpul nou, apoi acţionăm butonul   din bara cu instrumente. Pentru a stabili cheia primară pe cteva cmpuri , le selectăm, apoi acţionăm acelaşi buton. Pentru a anula una sau mai multe chei primare, executăm comanda Indexes din meniul View, apoi n caseta care se deschide selectăm cmpurile respective şi apăsăm tasta Delete.
După efectuarea modificărilor, salvăm tabelul cu Save As sau Save din meniul File.
           Introducerea datelor n tabel
     După ce am efectuat procedurile de descriere a tabelului , putem introduce date n cmpurile lui. Pentru a iniţia procesul de introducere a datelor , deschidem BD (dacă nu este deschisă) , apoi  n fereastra Database (fig.4) selectăm tabelul necesar (de exemplu Cititori) şi executăm un clic pe Open. Ca rezultat, se afişează cmpurile tabelului respectiv fig.7(iniţial tabelul conţine doar un rnd liber).

 
                      fig.7 Introducerea şi modificarea datelor n tabel


   Nu este absolut obligatoriu să completăm toate cmpurile; astfel dacă anumite date nu snt deocamdată cunoscute, introducerea lor poate fi amnată.
Excepţie fac cmpurile pentru care au fost stabilite chei primare. Aceste cmpuri nu pot avea valori nule, de aceea valorile lor trebuie introduse n mod obligatoriu.      Ordinea introducerii datelor poate fi şi ea oricare. Dacă a fost stabilită o cheie primară , la o nouă deschidere a tabelului nregistrările vor fi afişate n ordinea crescătoare a valorilor cmpului respectiv. Datorită acestui fapt, orice nregistrare nouă se adaugă la sfrşitul tabelului, avnd certitudinea că ulterior ea va fi plasată n locul corespunzător. După terminarea introducerii datelor nchidem tabelul, acţionnd butonul   sau executnd comanda Close din meniul File (modificările efectuate se salvează automat).
   Remarcă: Tipul şi caracteristicile datelor introduse trebuie să corespundă ntocmai tipului şi caracteristicilor cmpurilor respective definite n procesul
creării (descrierii) tabelului.

             Redactarea datelor
   Dacă apare necesitatea modificării (editării) nregistrărilor unui tabel, deschidem tabelul n regimul Datasheet View, acţionnd butonul Open din fereastra Database (sau executnd un dublu-clic pe numele tabelului). Ca rezultat, obţinem tabelul cu conţinutul precedent, conţinut pe care-1 putem modifica la dorinţă. Modificările pot fi cele mai diverse: nlocuirea datelor existente, completarea unor cmpuri, ale căror valori nu erau cunoscute anterior, adăugarea unor nregistrări noi, ştergerea unor nregistrări, copierea unor valori etc. Majoritatea acestor modificări se efectuează prin simpla deplasare n cmpul şi rndul necesar şi prin nlocuirea conţinutului vechi prin altul nou. Menţionăm, că semnul   indică rndul curent, iar atunci cnd
iniţiem procedura se modificare a nregistrării, acest semn este nlocuit cu   ultimul fiind prezent pnă la trecerea la o altă nregistrare.
     In cele ce urmează vom descrie cteva proceduri de redactare a datelor.
 a)    Adăugarea unor nregistrări noi. nregistrările noi sunt plasate la sfrşitul
tabelului .
b)      Excluderea unor nregistrări. Pentru a şterge una sau mai multe
nregistrări consecutive, marcăm aceste nregistrări prin glisarea ("tragerea")
mouse-ului pe verticala din stnga tabelului, apoi apăsăm tasta Delete sau
alegem comanda Delete din meniul Edit. Ni se va cere confirmarea acţiunii,
la care vom răspunde prin OK sau vom renunţa prin Cancel.
c)      Copierea unor blocuri de date. Pentru a copia un bloc de date, marcăm
blocul,  apoi  acţionăm  butonul  Copy din  bara  cu   instrumente.  Ca   rezultat,
conţinutul blocului se copie n memoria Clipboard. Din acest moment, conţinutul
memoriei Clipboard poate fi "lipit" oriunde. In acest scop marcăm locul inserării (blocul-destinaţie) şi acţionăm butonul Paste din bara cu instrumente.
    Remarcă: Dimensiunile şi caracteristicile blocului-destinaţie trebuie să corespundă ntocmai dimensiunilor şi caracteristicilor blocului-sursă.
    Modificările efectuate n orice nregistrare a tabelului se salvează n mod automat de fiecare dată cnd trecem la o altă nregistrare, sau la nchiderea tabelului. Aceasta nseamnă că după terminarea lucrului cu un tabel nu este neapărat nevoie să-1 salvăm, - sistemul o va face singur. Utilizatorul trebuie doar să aibă grijă să nchidă tabelul n caz că nu-1 va mai utiliza. Dacă, nsă, am efectuat modificări ce ţin de aspectul tabelului (lăţimea coloanelor, ordinea lor etc.) şi dorim ca aceste modificări să fie prezente la o nouă deschidere, nainte de a nchide tabelul, l salvăm cu comanda Save din meniul File.
   MS Access păstrează informaţia despre modificările efectuate, ceea ce permite, n cazul cnd am greşit, anularea modificărilor şi revenirea la starea precedentă. Pentru a anula modificările din cmpul curent, apăsăm tasta Esc, iar pentru a anula modificările din nregistrarea curentă -apăsăm tasta Esc de două ori. Pentru a anula modificările din nregistrare după ce s-a trecut la o nouă nregistrare, executăm comanda Undo Saved Record din meniul Edit. Prin aceasta se revine la situaţia anterioară acţiunii greşite (nedorite).

           Modificări ce nu afectează structura fundamentală
   Pe lăngă modificările care vizează structura unui tabel şi conţinutul lui, sunt posibile şi modificări care schimbă doar modul de prezentare a tabelului, fără a afecta structura lui fundamentală. Aceste modificări ţin de ordinea afişării cmpurilor (coloanelor), lăţimea cmpurilor, nălţimea rndurilor etc.
a) Schimbarea ordinii afişării cmpurilor, n unele cazuri, este necesar de a schimba ordinea afişării cmpurilor, diferită de cea din descrierea fundamentală, stabilită n regimul Design View. Pentru a reamplasa un cmp, l marcăm, apoi, ţinnd apăsat butonul stng al mouse-ului, l deplasăm n poziţia dorită şi eliberăm butonul. Ca rezultat, cmpul deplasat nlocuieşte cmpul peste care a fost suprapus, acesta din urmă deplasndu-se la dreapta. n mod analog putem deplasa şi alte cmpuri, astfel nct ordinea cmpurilor să devină cea dorită. Dar oricare ar fi modificările efectuate n regimul Datasheet View (Foaie de date), ele nu afectează ordinea şi caracteristicile cmpurilor stabilite n regimul Design View (Proiectare).
b) Sortarea nregistrărilor. Pentru a obţine o consecutivitate a nregistrărilor, diferită de cea existentă, putem efectua o sortare (n ordine crescătoare sau descrescătoare) după valorile unui cmp al tabelului. Pentru aceasta plasăm cursorul pe cmpul respectiv şi acţionăm unul din butoanele    sau   . Dacă la nchiderea tabelului această modificare nu se salvează, la o nouă deschidere a tabelului nregistrările se vor afişa n ordinea obişnuită. Modul de sortare descris aici nu prevede sortări complexe, acestea putnd fi obţinute n baza interogărilor .
c) Modificarea lăţimii coloanei unui cmp. In cazul cnd lăţimea unui cmp nu corespunde lungimii datelor pe care le conţine, putem schimba (mări, micşora) lăţimea lui. Pentru aceasta poziţionăm indicatorul mouse-ului pe linia din partea dreaptă a denumirii cmpului (forma indicatorului se schimbă n săgeată dublă orizontală), apăsăm butonul stng al mouse-ului şi, deplasndu-1 la stnga-la dreapta, micşorăm-mărim lăţimea cmpului. Dacă n poziţia n care indicatorul mouse-ului ia forma menţionată mai sus executăm un dublu-clic, lăţimea cmpului devine egală cu lungimea celei mai mari nscrieri a acestui cmp din partea vizibilă a tabelului. Subliniem şi cu această ocazie că aceste modificări nu schimbă lăţimea iniţială a cmpului, stabilită n procesul descrierii lui n regimul Design View.
d) Modificarea nălţimii rndurilor. Pentru a modifica nălţimea rndurilor, poziţionăm indicatorul pe linia ce desparte oricare două rnduri (forma indicatorului se modifică n săgeată dublă verticală), apăsăm butonul stng al mouse-ului şi, deplasndu-1 n sus-n jos, micşorăm-mărim nălţimea rndurilor (se modifică simultan nălţimea tuturor rndurilor, şi nu doar a celui curent).
     Dacă nu salvăm tabelul cu Save din meniul File, modificările descrise n a)-d) şi pierd actualitatea, astfel nct, la o nouă deschidere a tabelului, ordinea cmpurilor şi a nregistrărilor, dimensiunile coloanelor şi rndurilor vor rămne aceleaşi de pnă la modificarea tabelului. Dacă nsă după efectuarea modificărilor salvăm tabelul, aceste modificări vor fi actuale la o nouă deschidere a tabelului, dar şi n acest caz ele nu afectează caracteristicile din descrierea lui iniţială. După terminarea lucrului cu un tabel, l putem minimiza (n cazul cnd intenţionăm să-1 mai utilizăm) sau nchide (n cazul cnd nu-1 vom mai utiliza).      Deschiznd consecutiv cteva tabele şi redimensionnd ferestrele respective, putem afişa pe ecran mai multe tabele ale BD. nchiderea tabelului se face, după cum am mai menţionat, prin executarea comenzii Close din meniul File. Pentru a relua lucrul cu un tabel, l deschidem, acţionnd butonul Open din fereastra Database (fig. 4).
        
            Relaţii dintre tabele. Integritatea datelor
Relaţiile dintre două tabele se stabilesc, de regulă, prin intermediul unor cmpuri identice (cu aceeaşi denumire, de aceeaşi lungime, cu aceleaşi proprietăţi) prezente n ambele tabele.
      n cazul relaţiei de tipul unu la mulţi n tabelul primar (din partea căruia se realizează relaţia "unu") trebuie să existe un cmp, numit cheie primară, n care nu se admit valori care se repetă, iar n tabelul secundar (din partea căruia se realizează relaţia "mulţi") trebuie să existe un cmp analogic cu cel din tabelul primar, numit cheie străină, care poate admite valori care se repetă.
     Relaţia mulţi la mulţi poate fi transformată n două relaţii de tipul unu la mulţi prin definirea unui tabel intermediar, n care se introduc, n calitate de chei străine, cheile primare ale primelor douг tabele. Astfel, pentru a evita relaţia mulţi la mulţi dintre tabelele CĂRŢI şi CITITORI, a fost definit tabelul COMENZI n care au fost incluse cmpurile IdCarte şi IDCit din tabelele respective.
    Relaţia de tipul unu la unu presupune existenţa n ambele tabele a unei chei primare cu aceleaşi caracteristici, n fond, două tabele ntre care există o relaţie de tipul unu la unu pot fi oricnd unite ntr-un singur tabel; la fel, orice tabel poate fi divizat n două sau mai multe tabele ntre care se stabileşte o relaţie de tipul unu la unu. Divizarea unui tabel n modul menţionat mai sus poate fi utilă n cazul unui tabel cu un număr foarte mare de cmpuri (un tabel Access, de exemplu, nu poate conţine mai mult de 255 de cmpuri), dar şi n situaţia cnd o parte din informaţia care se referă la o entitate are un caracter confidenţial, sau se utilizează foarte rar.    n concluzie, deşi relaţiile de tipul unu la unu nu sunt caracteristice unei baze de date de tip relaţional, totuşi n unele situaţii acest tip de relaţii este preferabil sau chiar necesar.
  Dacă la proiectarea tabelelor ţinem cont de principiile expuse mai sus , atunci Access stabileşte automat relaţiile dintre tabelele care conţin cmpuri comune. Totuşi putem stabili relaţii ntre tabelele bazei de date şi n mod explicit, utiliznd comanda Relationships din meniul Tools. n acest caz apare

                  
                          fig.8 Relaţiile dintre tabelele bazei de date BIBL

 o  fereastră (fig.8) n care indicăm tabelele ntre care se stabilesc relaţii,apoi,     cu   ajutorul mouse-ului, trasăm legăturile ntre cmpurile respective.
    Dacă unul din cmpurile de legătură este de tip cheie primară (el are o
culoare mai pronunţată), trasarea se face pornind de la acest cmp. Tabelul
de  la  care se  trasează  legătura  se  numeşte  tabel  primar (principal),  iar
celălalt - secundar (subordonat). Ca rezultat, apare o casetă de dialog (fig.9)

                       
                         
1   fig.9 Stabilirea proprietăţilor relaţiilor
n care putem specifica proprietăţile relaţiei (legăturii).
     Pentru relaţia dintre două tabele pot fi stabilite următoarele proprietăţi:
           1.  Tipul relaţiei (Relationship Type) poate fi stabilit ca unu la unu (one   
             to one) sau unul la mulţi (one to many);
        2.      Impune   integritatea   referenţială   (Enforce  Referential  Integrity}.
Includerea   acestui   parametru   asigură   integritatea   datelor   n   procesul
introducerii, modificării sau ştergerii nregistrărilor din tabelele legate. Acest
lucru este posibil doar n cazul cnd cmpul din tabelul principal este de tip
cheie primară, iar cmpul de legătură din tabelul subordonat are acelaşi tip de
date.  Atunci  cnd  introducem  date  n  cmpul  de  legătură  al  tabelului
subordonat,  sunt  acceptate  doar acele  valori  care  se  conţin  n  cmpul
respectiv al tabelului principal. De exemplu, dacă nu există un cititor cu
identificatorul 0472 n tabelul CITITORI, sistemul nu va admite apariţia
acestui cod n cmpul respectiv al tabelului COMENZI. In acest caz este
necesar să introducem mai nti datele despre cititorul n cauză n tabelul
CITITORI, apoi să utilizăm identificatorul cititorului n tabelul COMENZI.
  La fel, nu putem exclude o nregistrare din tabelul principal, dacă valoarea
cmpului de legătură a acestei nregistrări se conţine n una sau mai multe
nregistrări ale tabelului subordonat.
        3.  Modificarea  n  cascadă  a  nregistrărilor (Cascade  Update Related
Fields). Dacă acest parametru este inclus, sistemul va modifica toate valorile
cmpului de legătură ale tabelului subordonat n cazul cnd valoarea cmpului
respectiv al tabelului principal se modifică. De exemplu, dacă un cititor a pierdut
carnetul de cititor cu numărul 0519 (identificatorul cititorului) şi i se remite un nou
carnet cu numărul  1465,  această  valoare trebuie  să  se modifice  n  toate
nregistrările tabelului COMENZI n care figurează valoarea veche. In caz contrar,
mprumuturile de cărţi făcute de cititorul cu identificatorul 0519 nu sunt valide,
deoarece nu se cunoaşte nici o informaţie despre cititorul n cauză.
       4.  Excluderea n cascadă a nregistrărilor (Cascade Delete Related
Records). Dacă acest parametru este activ, atunci excluderea unei nregistrări
din tabelul principal implică excluderea tuturor nregistrărilor din tabelul
subordonat, n care valoarea cmpului de legătură coincide cu cea a cmpului
respectiv din tabelul principal. De cele mai multe ori asemenea excluderi
sunt fireşti, deoarece existenţa unor nregistrări n tabelul subordonat, pentru
care valoarea cmpului de legătură nu se conţine şi n tabelul principal, duce
la pierderea integrităţii datelor.
     Toate raţionamentele de mai sus ţin de integritatea datelor, asigurarea căreia reprezintă unul din principiile fundamentale ale proiectării bazelor de date.

                                










                               



                              
                                 


                          4.Funcţii Access
   
 MS Access conţine un set de funcţii standard de cele mai diferite tipuri.
Pentru descrierea lor vom folosi urmгtoarele convenюii:
  CmpNum - argument ce reprezintă cmpuri de tip Number sau Currency;
  CmpText - argument ce reprezintă cmpuri de tip Text;
  CmpDate - argument ce reprezintă cmpuri de tip Date/Time;
  Cmp - argument ce reprezintă cmpuri de orice tip;
  n,m - argumente ce reprezintă numere naturale;
  i - argument ce reprezintă numere ntregi;
  {} - argumentele incluse n paranteze figurate sunt opţionale (neobligatorii);
  Argumentele funcţiei se pun ntre paranteze rotunde şi se separă prin punct şi virgulă (uneori prin virgulă). n cazul lipsei argumentelor, după denumirea funcţiei se pun paranteze rotunde care nu conţin n interior nimic. n cazul cnd argumentul funcţiei reprezintă un cmp, numele cmpului se ia ntre paranteze pătrate [].
Enumerăm n cele ce urmează cteva dintre funcţiile sistemului Access:
1.     Abs(CmpNum) - calculează valoarea absolută (modulul).
2.     Avg(CmpNum) - calculează media aritmetică.
3.     Sin(CmpNum) - calculează valoarea sinusului.
4.     Exp(CmpNum) - calculează puterea numărului e.
5.     Log(CmpNum) - calculează logaritmul natural.
6.     Sqr(CmpNum) - calculează rădăcina pătrată.
7.     Int(CmpNum) - calculează partea ntreagă.
8. Rnd(i) sau Rnd()  - returnează un număr aleator situat ntre 0 şi 1.
9.    Sum(CmpNum) - calculează suma.
10.      Max(CmpNum)-calculeazăvaloareamaximă
l 1. Min(CmpNum) - calculează valoarea minimă.
12.     Var(CmpNum) - calculează variaţia (dispersia).
13.     Count(Cmp) - calculează numărul valorilor nenule.
14.     Left(CmpText,n) - extrage primele n caractere (din stnga).
15.     Right(CmpText,n) - extrage ultimele n caractere (din dreapta).
16.     Len(CmpText) - calculează lungimea expresiei.
17.     LTrim(CmpText} - lichidează toate spaţiile de debut (din faţă).
18. RTrim(CmpText) - lichidează toate spaţiile (blancurile) de la sfrşit.
19.     Trim(CmpText) - lichidează toate spaţiile de debut şi de la sfrşit.
20.     Mid(CmpText;n{;m}) - extrage primele m caractere, ncepnd cu al
n-lea. n cazul cnd m lipseşte - extrage toate caracterele, ncepnd cu al n-lea.
21. InStr({n;}Text,CmpText) - calculează locul, ncepnd cu care
valoarea Text se conţine n ntregime n CmpText. Căutarea se face ncepnd
cu poziţia l (sau n, dacă este specificat).
22. Date() - returnează data curentă.
23.     Time() - returnează ora curentă.
24.     Now() - returnează data şi ora curente.
25.     Weekday(CmpDate) - calculează ziua săptămnii care corespunde datei.
26.     Year(CmpDate) - extrage anul (cu 4 cifre).
27.     DateAdd(“Tip”;i;CmpDate) - adună/scade la/din CmpDate i intervale de
tipul dat (i poate lua şi valori negative). "Tip " poate avea una din următoarele valori:
"q"- trimestre;        ex.: DateAdd("q";7;Date()) - peste 7 trimestre din ziua
                                                curentă.
"m" - luni;       ex.: DateAdd("m ";-9;Date()) - cu 9 luni n urmă faţă de ziua                                         curentă.

"d" - zile;       ex.: DateAdd("d";25;[DataImpr]) - peste 25 de zile de la data  mprumutului.

"yyyy" - ani;       ex.: DateAdd("yyyy";-4;Date()) - cu 4 ani n urmă de la data  

curentă,

"ww" - săptămni;     ex: DateAdd("ww";2;[DataRestit])  -  peste  2 săptămni de la    data restituirii.

"h" - ore;       ex.: DateAdd("h";-27;Now()) - cu 27 de ore in urmă.

    
    Remarcă: Funcţiile descrise mai sus pot fi utilizate numai n interogări, formulare, rapoarte şi n limbajul de programare Visual Basic for Applications.























                   
                         5.  Interogări Access

   Performanţele unui SGBD depind n mare măsură de capacitatea extragerii rapide a diferitor informaţii n forma dorită. n multe cazuri este necesar de a selecta date din mai multe tabele simultan. De exemplu, pentru a selecta cărţile din domeniul informaticii editate n Franţa după anul 2001, utilizăm 3 tabele: CĂRŢI, ŢĂRI şi TEMATICI. Pentru a formula condiţii de selecţie, n MS Access exista o clasă specială de obiecte (alături de tabel )numite Interogări (engl. Queries).

   Sinonime: Interogări - Cereri - Interpelări.

  Interogările reprezintă modalităţi de selecţie şi afişare a informaţie din unu sau mai multe tabele, formulate cu ajutorul unor condiţii logice.

                                 Tipuri de interogări
 n funcţie de modul de definire şi rezultatele acţiunii, interogările pot fi clasificate astfel:
    a)   interogări de selecţie (folosind condiţii logice);
    b)  interogări de sortare (indicnd cmpul/cmpurile şi ordinea sortării);
    c) interogări de excludere a unor nregistrări din BD (de exemplu,
excluderea  tuturor cititorilor care nu au mprumutat  cărţi n
ultimii 2 ani);
    d) interogări de modificare a unor nregistrări din BD (de exemplu,
majorarea preţurilor tuturor cărţilor cu 20%);
    e)    interogări de obţinerea a unor informaţii rezultante (n cmpuri noi)
n   baza   informaţiei   existente   (de   exemplu,   obţinerea   vrstei cititorului prin scăderea anului de naştere din anul curent);
    f)   interogări de obţinere a unor totaluri, medii etc.;
     g)  interogări ncrucişate.
 n toate cazurile, cu excepţia ultimelor două, rezultatul interogării este un nou set de date, numit set dinamic (engl: Dynaset). Setul dinamic (rezultalul interogării) conţine doar cmpurile specificate ale nregistrărilor din tabelele specificate care satisfac condiţiilor specificate. Denumirea '"Set dinamic" este legată de faptul că orice modificări ale datelor din tabelele specificate n interogare implică modificări respective ale rezultatului interogării (la o nouă executare a ei). Şi invers, orice modificări n setul dinamic implică modificări n tabelele respective (cu condiţia respectării integrităţii datelor). Seturile dinamice nu se memorizează; ele se formează din nou de fiecare dată cnd executăm o interogare. Dac n tabelele BD intervin modificări, rezultatele executării a două interogări identice pot fi diferite, n cele ce urmează vom descrie modalităţile de definire şi executare a interogărilor nominalizate.
              


            

               5.1 Interogări de selecţie a nregistrărilor(Select Query)
   Exemplu:1
   Pentru a defini o interogare de selecţie (de exemplu, afişarea emisiunilor cu desene animate), acţionăm fila Queries din fereastra Database (fig. 10), apoi butonul New.

             

               fig.10 Fereastra cu clasele de obiecte Access

  n continuare indicăm unul din cele 5 moduri de creare a interogărilor (n cazul nostru Design View)
   Din caseta care apare (fig. 11) selectăm consecutiv (n orice ordine) tabelele necesare (n cazul nostru,Emisiuni,Genuri,Canale TV) şi pentru fiecare acţionăm butonul Add.

                      
                 fig.11 Selectarea tabelelor pentru definirea interogării
 
    După selectarea tabelelor acţionăm butonul Close. Dacă tabelele au cmpuri comune (definite n procesul creării lor), Access stabileşte n mod automat legăturile respective (fig. 12). n continuare indicăm, n partea de jos a ferestrei, cmpurile din fiecare tabel (n ordinea dorită) care urmează a fi afişate sau pentru care se vor specifica condiţii de selecţie şi/sau de sortare. Includerea cmpurilor se face prin "tragerea" lor cu ajutorul mouse-ului din tabelele din caseta de sus n rndul Field al casetei de jos sau prin executarea unui dublu-clic pe denumirile respective. După aceasta specificăm condiţiile selecţiei şi/sau ordinea sortării, n acest fel interogarea se consideră definită (fig. 12).
             
                  
                                 fig12.Specificarea condiţiilor de selecţie

  n rndul Criteria din partea de jos a ferestrei specificăm condiţia selecţiei Des* pentru cmpul DenGen al tabelului Genuri. Dacă dorim ca nregistrările să fie afişate ntr-o anumită ordine (crescătoare/alfabetică sau descrescătoare) pentru cmpul respective specificăm opţiunile Ascending sau Descending n rndul sort.   Dacă indicăm Ascending pentru cmpul DenEmisiunii al tabelului emisiuni denumirile emisiunilor vor fi afişate n ordenea alfabetică.
   Interogarea astfel definită poate fi executată imediat n scopul obţinerii rezultatului (fig. 13), sau salvată pentru a fi executată ulterior. n primul caz acţionăm butonul       (Datasheet View) din bara cu instrumente n aldoile caz executăm comanda Save din meniul File. La salvarea interogării indicăm numele ei, care nu trebuie să  coincidă cu numele unor tabele sau ale unor interogări definite anterior. Setul dinamic (rezultatele interogării) conţine cmpurile marcate cu simbolul     n rndul Show al ferestrei. Celelalte cmpuri chiar dacă sunt incluse n interogare, nu se afişează.

                      
          
                             fig.13 Rezultatele interogării


Exemplu 2. Lista emisiunilor cu durata mai mică de 30 de minute.

   Pentru afişarea emisiunilor cu durata mai mică de 30 minute acţionăm fila Queries  din fereastra Database , apoi butonul New. n continuare indicăm unul din cele 5 moduri de creare a interogărilor, n cazul nostru Design View (fig.14).

 
                               fig.14

Din caseta care apare (fig.15) selectăm tabelul Emisiuni,Canale TV şi Genuri şi acţionăm butonul Add.

 
                                          fig.15

După selectarea tabelului acţionăm butonul Close. Apoi executăm dublu clic pe denumirile cmpurilor şi vor trece n rndul Field din caseta de jos (fig.16).
           
                                           fig.16
   După aceasta specificăm condiţiile selecţiei. n rndul Criteria scrim condiţia <30 pentru cmpul Durata Emisiunii al tabelului Emisiuni şi ne va afişa lista emisiunilor cu durata mai mică de 30 minute.

                       
                         fig.17. Rezultatul interogării

Exempul 3: Lista emisiunilor ştiri
    Pentru afişarea emisiunilor ştiri acţionăm fila Queries  din fereastra Database , apoi butonul New. n continuare indicăm unul din cele 5 moduri de creare a interogărilor, n cazul nostru Design View (fig.14).
  Din caseta care apare (fig.15) selectăm tabelul Emisiuni , Genuri acţionăm butonul Add .După selectarea tabelului acţionăm butonul Close.
    Apoi executăm dublu clic pe denumirile cmpurilor şi vor trece n rndul Field din caseta de jos (fig.18).          
                        
                                              fig.18
  După aceasta specificăm condiţiile selecţiei. n rndul Criteria scrim condiţia “ştiri” pentru cmpul DenGen al tabelului Genuri şi ne va afişa lista emisiunilor ştiri.
          
                     fig.19. Rezultatul interogării


Exemplul 4: Lista emisiunilor n limba rusă

Fie că dorim să afişăm lista emisiunilor n limba rusă. Pentru aceasta executăm următorii paşi:
   Definim o interogare n care includem tabelele Emisiuni, Limbi, Canale TV din care selectăm cmpurile DenEmisiunii, DenCanal, DenLimba (fig.20)

                      
                                                fig.20
După aceasta specificăm criteriul de selecţie n rndul Criteria pentru cmpul DenLimba din tabelul Limbi şi ne va afişa lista emisiunilor n limba rusă.
                             
                                                     fig.21
 
                             5.2 Interogări de sortare a nregistrărilor

   După ce am definit condiţiile de selecţie, putem stabili condiţii de sortare  pentru unul sau mai multe cmpuri.
    Exemplu 1:     Pentru afişarea emisiunilor n ordine alfabetică executăm un clic n rndul Sort al casetei (fig.22) n dreptul cmpului DenEmisiuni şi din lista derulantă alegem opţiunea Ascending.

     
                                              fig.22

Pentru a afişa rezultatul interogării (fig.23), acţionăm butonul   (Datasheet View) din bara cu instrumente.
              
                                                   fig.23

Sortarea datelor poate fi făcută şi fără a specifica condiţii de selecţie. n acest caz se vor afişa toate nregistrările, dar ordinea lor va corespunde condiţiilor stabilite n rndul Sort pentru cmpurile respective.
 
Exemplu 2:    Lista emisiunilor n ordinea duratei lor.
 
Pentru  afişarea emisiunilor n ordine duratei lor executăm un clic n rndul Sort al casetei (fig.24) n dreptul cmpului Durata emisiunii şi din lista derulantă alegem opţiunea Ascending.

             
                                                           fig.24
Pentru a afişa rezultatul interogării (fig.25), acţionăm butonul   (Datasheet View) din bara cu instrumente.
              
              
                                                 fig.25

              
                        5.3 Interogări de actualizare a nregistrărilor (Update Query)

  n cazul cnd este necesar de a modifica un număr mare de nregistrări conform unuia şi aceluiaşi algoritm, putem defini o interogare de modificare (Update Query)
  Vom descrie n continuare modul de definire a unei interogări pentru care ştirile se măresc cu 5 minute.
  1. Definim interogarea n modul descris n  p.5.1.
2. Includem tabelul Emisiuni şi Genuri.
3. Selectăm Update din meniul Query sau acţionăm butonul din bara de instrumente.Ca rezultat titlul ferestrei se modifică n Update Query, iar n partea de jos apare rndul Update To (fig.26).
           
                 
                                             fig.26

4. Includem (prin “tragere”) n celulele rndului Field cmpurile DenEmisiunii, DenGen, Durata emisiunii.
5.  Introducem n rndul Update To pentru cmpul DenEmisiunii expresia  [DenEmisiunii], DenGen expresia [DenGen], Durata emisiunii expresia [Durata emisiunii]+5
6. Introducem n rndul Criteria pentru cmpul DenGen condiţia Stiri.
7. Acţionăm butonul   din bara cu instrumente, pentru a obţine valorile curente ale cmpului Durata emisiunii care urmează a fi modificate (fig.27).
               
                           
                                                        fig.27


Modificările propriu-zise vor fi operate numai după trecerea n regimul Design View şi acţionarea butonului din bara cu instrumente sau executarea comenzii Run din meniul Query. n acest caz pe ecran va apărea un mesaj despre numărul total al nregistrărilor care urmează a fi modificate. Acţionnd butonul Yes , Access va efectua modificările (fig.28). Pentru a renunţa la modificări, acţionăm butonul No .
                    
                                             fig.28
Remarcă: Interogările de tip Update se execută de regulă o singură dată. n cazul executării repetate a interogării definite n exemplul de mai sus, vom obţine de fiecare dată mărirea emisiunilor ştiri cu 5 minute.

            5.4 Interogări de excludere a nregistrărilor (Delete Query)

   Fie, de exemplu, că dorim să excludem din tabelul Emisiuni toate emisiunile ntre ora 1000 -1200. Pentru aceasta, executăm următoarele acţiuni:
1.    Definim interogarea n modul descris n p 5.1.
2.    Includem tabelul Emisiuni.
3.    Selectăm Delete Query din meniul Query sau acţionăm butonul     
(dacă este afişat) din bara cu instrumente. Ca rezultat, titlul  ferestrei se
schimăг n Delete Query iar n partea de jos a ferestrei apare rndul Delete.
4.    Din lista cmpurilor tabelului Emisiuni, afişată n partea de sus a
ferestrei (fig. 8.12), selectăm cmpurile care vor fi afişate sau pentru care vor
fi   specificate  condiţii  de  selecţie  DenEmisiunii şi Timpul nceperii şi le "tragem" n celulele respective ale rndului Field din partea
de jos. Ca rezultat, n celulele respective pentru fiecare cmp apare opţiunea
Where (din engleză - Unde, In care).
5.    Introducem n celulele rndului Criteria condiţiile selecţiei. n cazul
nostru  pentru  cmpul  Timpul nceperii scriem  condiţia  Between 1000 And 1200.  

                  
                                                        fig.29
6. Pentru a obţine lista nregistrărilor care urmează a fi excluse (dar ncă n-au fost excluse), acţionăm butonul    (Datasheet View) din bara cu instrumente. Ca rezultat, obţinem fereastra, reprezentată n figura 8.13.

                  
                                          fig.30
7.    Dacă rezultatele obţinute n p.6 sunt cele dorite, revenind la regimulDesign View, putem elimina realmente nregistrările, executnd comanda Run din meniul Query sau acţionnd butonul  (Run) din bara cu instrumente. Ca rezultat, pe ecran apare un mesaj despre numărul total al nregistrărilor care urmează a fi eliminate. Dacă acţionăm butonul Yes, nregistrările vizate sunt eliminate definitiv. Pentru renunţare, acţionăm butonul No.
8.    Salvăm interogarea, executnd comanda Save As din meniul File şi
indicnd numele interogă


               5.5 Interogări de grupare şi totalizare a nregistrărilor
    
    n multe cazuri apare necesitatea de a obţine valori rezumative referitoare la toate nregistrările din tabel sau pentru o submulţime a lor. De exemplu, ar putea să ne intereseze cte emisiuni de fiecare gen sunt. n acest scop n Access pot fi definite interogări n care sunt specificate condiţii de grupare şi totalizare.
   Pentru obţinerea valorilor rezumative, sunt prevăzute următoarele funcţii:
-Sum, pentru calcularea sumei valorilor cmpului;
-Avg, pentru calcularea mediei valorilor cmpului;
-Min, pentru găsirea valorii minime;
-Max, pentru găsirea valorii maxime;
-Count, calculează numărul de valori ale cmpului (excluznd cele vide);
-StDev, pentru calcularea abatem standard;
-Var, pentru calcularea dispersiei.
Valorile rezumative pot fi obţinute att pentru toate nregistrările din tabel ct şi pentru grupuri de nregistrări.
     Fie că dorim să obţinem informaţii despre cte emisiuni de fiecare gen sunt. Pentru aceasta executăm următoarele acţiuni:
1.    Definim o interogare n care includem tabelele Emisiuni şi Genuri din care selectăm cmpurile DenGen şi DenEmisiunii (fig)                    
                               
                                                  fig.31
2.  Selectăm opţiunea Totals din meniul View; ca rezultat n caseta de jos apare rndul Total, iar n celulele respective ale cmpurilor selectate opţiunea Group By
3. Din lista derulantă a cmpului DenEmisiunii (rndul Total) selectăm opţiunea Count.
4. Acţionăm butonul     pentru a obţine valorile căutate (fig)          

 
                        
                                               fig.32
              
                    
 

                                   5.7 Interogări ncrucişate (Crosstab Query)

    In multe cazuri rezultatele unei interogări sunt greu de perceput din cauza volumului mare de informaţii selectate. In figura   sunt prezentate datele despre cte emisiuni de fiecare gen sunt, obţinute cu ajutorul unei interogări de grupare şi totalizare.
                              
                                                        fig
   Access permite gruparea şi reprezentarea datelor ntr-o formă compactă, formă care se aseamănă cu un tabel electronic.n acest scop se definesc interogări speciale, numite interogări ncrucişate (Crosstab Query).
  Pentru a defini o interogare ncrucişată procedăm iniţial ca n cazul unei interogări de selecţie obişnuită, adică selectăm tabelele Emisiuni, Canale TV, Genuri, din care selectăm cmpurile DenGen, DenCanal, DenEmisiunii (fig)
                       
                                                         fig
     n continuare parcurgem următorii paşi:
1.    Selectăm opţiunea Crosstab din meniul Query. Ca rezultat, titlul ferestrei
se schimbă n Crosstab Query, iar n partea de jos apare rndul Crosstab.
2.    Definim cmpul DenGen, valorile căruia vor servi n calitate de denumiri ale rndurilor tabelului. Pentru  aceasta  acţionăm butonul cu săgeată din rndul Crosstab pentru cmpul DenGen şi din lista derulantă care apare selectăm opţiunea Row Heading.
3.    In mod analogic definim cmpul DenCanal, valorile căruia vor servi n calitate de denumiri ale coloanelor tabelului . Pentru aceasta acţionăm butonul cu săgeată din rndul Crosstab pentru cmpul DenCanal şi din lista derulantă care apare selectăm opţiunea Column Heading.
4.    n rndul Total nlocuim opţiunea Group By din cmpul DenEmisiunii prin
operatorul Count.
5.    Pentru cmpul DenEmisiunii n rndul Crosstab stabilim opţiunea Value pe
care o selectăm din lista derulantă prin analogie cu acţiunile descrise mai sus.
6. Acţionăm butonul      pentru vizualizarea rezultatelor (fig)

            
                                                          fig
Referat oferit de www.ReferateOk.ro
Home : Despre Noi : Contact : Parteneri  
Horoscop
Copyright(c) 2008 - 2012 Referate Ok
referate, referat, referate romana, referate istorie, referate franceza, referat romana, referate engleza, fizica