access lectia 1 crearea bazelor de date

Upload: marius-c-catalin

Post on 07-Apr-2018

255 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    1/12

    Microsoft AccessBaze de date

    1

    CREAREA BAZELOR DE DATETermenul de baza de date are semnificatii diferite pentru persoane diferite. Multi ani, n

    lumea sistemelor xBase (dBASE, FoxPro, CA-Clipper), baza de date era folosita pentru a descrieo colectie de cmpuri si articole. n mediul client/server, baza de date se refera la toate datele,structura, indecsii, regulile si procedurile asociate unui sistem. n termenii Access, baza de date

    este o colectie a tuturor tabelelor, interogarilor, formularelor, macro-urilor si modulelor carecompun un sistem complet.Bazele de date Access sunt realizate din tabele, interogari, formulare, tapoarte, macro-uri

    si module. Fiecare din aceste obiecte au propriile lor functii speciale. De asemenea, mediulAccess contine si alte obiecte: relatiile dintre table, bare cu instrumente, meniuri, proprietati alebazei de date si specificatiile de import/export. Toate aceste obiecte, luate mpreuna, va oferaposibilitatea sa creati o aplicatie puternica, prietenoasa.

    Notiuni generale

    Baza de date este o colectie de informatii relative la un un anumit subiect sau scop, cumar fi urmarirea comenzilor clientilor sau gestiunea unei colectii muzicale. Daca baza dvs. de datenu este stocata pe un calculator (vezi figura 1) sau numai unele parti ale acesteia, atunci veti

    urmari informatiile din mai multe surse, pe care va trebui sa le organizati si coordonati singuri.

    Folosind Microsoft Access puteti gestiona toate informatiile intr-un singur fisier baza dedate. n interiorul fisierului, datele sunt impartite n containere separate de memorare numitetabele; vizualizati, adaugati si actualizati datele folosind formulare; cautati si regasiti numaidatele dorite utiliznd interogarile; analizati sau tipariti datele ntr-o anumita forma cu ajutorulrapoartelor (vezi figura 2).

    Figura 1. Baza de date care nu este stocata pe calculator.

    Atunci cnd numarul detelefon al unui furnizor semodifica, acesta trebuie sa fieactualizat n cartoteca si pefoile mai multor produse

    Adresele clientuluidintr-o lista postala

    Informatiilecomenzilor dintr-ofoaie de calcul

    Numerele detelefon dintr-un fisier cucartoteci

    Informatiiledespre produsedintr-un cabinetcu cartoteci

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    2/12

    Microsoft AccessBaze de date

    2

    Pentru a memora datele, creati o tabela pentru fiecare tip de informatii pe care le urmariti.Pentru a strange impreuna datele din mai multe tabele intr-o interogare, formular sau raportdefiniti relatii intre tabele (vezi figura 3).

    Pentru a cauta si regasi doar datele care indeplinesc conditiile specificate, inclusiv datedin mai multe tabele, creati o interogare (vezi figura 4). De asemenea, o interogare poateactualiza sau sterge simultan mai multe inregistrari si sa execute calcule asupra datelor.

    Pentru a putea vizualiza, introduce sau modifica usor datele direct intr-o tabela creati unformular (vezi figura 5). Microsoft Access regaseste datele dintr-una sau mai multe tabele si leafiseaza pe ecran utilizand macheta aleasa cu Form Wizardsau folosind o macheta pe care aticreat-o in fereastra Form Design.

    Figura 2. Principalele obiecte ale unei baze de date.

    Stocati datele o singura data ntr-o tabela, dar levizualizati din mai multe locuri. Atunci cnd actualizatidatele, ele sunt modificate peste tot unde apar.

    Tabela

    Formular

    Interogare

    Raport

    Figura 3. Corelarea tabelelor prin intermediul unui cmp

    Lista cu dateleclientilor

    Un identificator unic(Customer ID sau

    Order ID) ajuta laselectarea articolelor.Adaugnd un cmp deidentificare unic alarticolelor intr-o altatabela si definind orelatie, MicrosoftAccess poate corelaarticolele din ambeletabele astfel ca leputeti aduna mpreunaintr-un formular sauinterogare.

    Foaia de calcula comenzii

    Figura 4. Interogare care furnizeaza informatii culese din doua tabele.

    Aceasta interogare regasesteinformatiile despre clientii dinLondra ale caror comenzi aufost lansate in luna Aprilie.

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    3/12

    Microsoft AccessBaze de date

    3

    Pentru a analiza datele sau pentru a le tipari, creati un raport. De exemplu, puteti tipari unraport care sa grupeze datele si sa calculeze totaluri si un alt raport continnd diferite dateformatate pentru tiparirea etichetelor postale (vezi figura 6).

    Pentru a lucra cu toate obiectele dintr-o baza de date Access folositi fereastra Database,care in functie de versiunea aplicatiei Microsoft Access arata si se utilizeaza in mod diferit (vezifigura 7). Daca in Microsoft Access 97, se execut clic pe o eticheta (de exemplu, Tables) pentrua afisa lista tuturor obiectelor de acelasi tip existente, in Microsoft Access 2000 in bara Objectsse executa clic pe butonul corespunzator categoriei de obiecte dorite. Folosind butoanele dinfereastra Database, puteti deschide (Open sau Preview) un obiect existent, modifica (Design)un obiect existent sau crea (New) un nou obiect.

    Microsoft Access 97 Microsoft Acces 2000

    Figura 7. Fereastra Database.

    Figura 5. Formularele permit vizualizarea si actualizarea datelordin una sau mai multe tabele.

    Tabelele afiseazasimultan mai multearticole, dar trebuiesa derulati pentru avedea intregularticol, dar nu putetiactualiza simultandatele din mai multe

    tabele

    Formularele seconcentreaza

    asupra unuisingur articol laun moment dat,dar ele pot afisa

    cmpurile dinmai multe

    tabele, imaginietc.

    Formularele potcontine controalepentruautomatizareasarcinilor

    Figura 6. Realizarea rapoartelor pentru tiparirea datelor.

    Creareaetichetelor

    postale

    Calculareatotalurilor

    Prezentareatotalurilor intr-oreprezentaregrafica

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    4/12

    Microsoft AccessBaze de date

    4

    Proiectarea unei baze de date

    Inainte de a folosi Microsoft Access pentru a construi tabele, formulare si celelalte obiectecare alcatuiesc o baza de date, trebuie s-o proiectati. Un bun proiect al bazei de date reprezintacheia de baza pentru crearea unei aplicatii care sa faca ceea ce doriti in mod efectiv, cuacuratete si eficient. n continuare sunt prezentati pasii de baza in proiectarea unei baze de date.

    a. Determinarea scopului bazei de date

    Primul pas in proiectarea unei baze de date Microsoft Access este determinarea scopuluibazei de date si modul in care ea va fi folosita. Trebuie sa stiti ce informatii doriti de la o baza dedate. Din aceastea, puteti determina ce subiect este necesar sa memorati in fiecare tabela si cedate trebuie sa memorati despre fiecare subiect (cmpurile din tabela).

    Discutati cu persoanele care vor folosi baza de date. Proiectati rapoartele pe care le vetiproduce. Culegeti formularele folosite in mod curent pentru inregistrarea datelor. Examinatieventualele baze de date similare existente.

    b. Determinarea tabelelor necesare

    Determinarea tabelelor necesare poate fi un pas dificil in procesul de proiectare a uneibaze de date. Aceasta se datoreste faptului ca rezultatele pe care doriti sa le obtineti de la bazade date rapoartele pe care vreti sa le tipariti, formularele pe care vreti sa le folositi, intrebarile lacare vreti sa va raspunda nu asigura in mod obligatoriu si reperele despre structura tabelelor

    care le va produce.Nu este necesar sa proiectati tabelele folosind Microsoft Access. De fapt este indicat camai inti sa le schitati pe hrtie. Cnd proiectati tabelele, mpartiti informatia in componentetinnd cont de urmatoarele principii:

    1. Tabela nu trebuie sa contina informatii duplicate, iar informatia nu trebuie duplicata nmai multe tabele.Cnd fiecare componenta a informatiei este memorata numai ntr-o singura tabela,actualizarea ei se va face ntr-un singur loc. Creste astfel eficienta si se eliminaposibilitatea duplicarii intrarilor ce contin informatii diferite. De exemplu, veti memoraadresa si numarul de telefon al fiecarui client o singura data, ntr-o singura tabela.

    2. Fiecare tabela trebuie sa contina informatii numai despre un singur subiect.Cnd fiecare tabela contine date numai despre un singur subiect, puteti intretineinformatiile despre un subiect n mod independent fata de celelalte subiecte. De

    exemplu, veti memora adresele clientilor ntr-o tabela diferita fata de comenzileclientilor, astfel nct sa puteti sterge o comanda si intretine informatiile despre clientin mod independent.

    3. Determinarea cmpurilor de care aveti nevoie in fiecare tabela.Fiecare tabela contine informatii despre acelasi subiect, iar fiecare cmp dintr-otabela contine date individuale despre subiectul respectiv. De exemplu, este posibil cao tabela a clientilor sa includa cmpurile: numele companiei, adresa, localitate,judet,numarul de telefonetc. Cnd proiectati cmpurile pentru fiecare tabela trebuie saaveti in vedere urmatoarele:

    Corelarea fiecarui cmp in mod direct cu subiectul tabelei. Nu se vor include date derivate sau calculate (date rezultate in urma evaluarii

    unor expresii). Se vor include toate informatiile necesare. Informatia se va memora in cele mai mici parti ale acesteia (de exemplu, se

    vor crea campuri separate pentru numele de familie si prenume, nu un singurcamp pentru nume si prenume).

    4. Identificarea cmpurilor cu valori unice.Pentru ca Microsoft Access sa conecteze informatiile stocate n tabele separate deexemplu, pentru a lega un client de toate comenzile sale fiecare tabela din baza dedate trebuie sa includa un cmp sau un set de cmpuri care identifica n mod unic

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    5/12

    Microsoft AccessBaze de date

    5

    fiecare articol din tabela. Un astfel de cmp sau set de cmpuri se numeste cheieprimara.

    5. Determinarea relatiilor dintre tabele.Dupa ce ati mpartit informatiile in tabele si ati identificat cmpurile cheilor primare,este necesar sa stabiliti o metoda prin care sa indicati lui Microsoft Access cum sareuneasca informatiile asociate. Pentru aceasta, definiti relatiile de legatura dintretabele.

    6. Perfectionarea proiectului.Dupa ce ati proiectat tabelele, cmpurile si relatiile de legatura necesare, trebuie sarevedeti proiectul si sa detectati orice defecte ce s-ar putea ivi. Este mai usor samodificati acum proiectul bazei de date, dect atunci cnd deja ati umplut tabelele cudate.Folositi Microsoft Access pentru crearea tabelelor dvs., specificati relatiile de legaturadintre tabele si introduceti cteva articole in fiecare tabela. Vedeti daca puteti folosibaza de date pentru a obtine raspunsurile dorite. Creati formulare si rapoarte simplepentru a verifica daca ele afiseaza datele asteptate. Examinati duplicatele de datenenecesare si eliminati-le.

    7. Adaugarea datelor si crearea altor obiecte ale bazei de date.Atunci cnd considerati ca structurile tabelelor corespund obiectivelor proiectului,trebuie sa adaugati toate datele in tabele. Apoi puteti crea interogarile, formularele,

    rapoartele, macrocomenzile si modulele necesare.8. Folosirea instrumentelor de analiza din Microsoft Access.Microsoft Access include doua instrumente care va ajuta la perfectionarea proiectuluibazei de date.Table Analyzer Wizardpoate analiza proiectul unei tabele la un moment dat, poatepropune noi structuri de tabele si relatii daca sunt necesare si poate reorganiza otabela in tabele asociate daca acestea au sens.Performance Analyzerpoate analiza intreaga baza de date si face recomandarile sisugestiile necesare perfectionarii ei. De asemenea, expertulul poate implementaaceste recomandari si sugestii.

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    6/12

    Microsoft AccessBaze de date

    6

    Principiile si conceptele bazei de date

    Abordarea relationala

    Principiile modelului relational au fost prezentate prima data de catre dr. E.F. Codd narticolul Un model relational al datelor pentru bancile de date distribuite, n iunie 1970.

    Cele mai populare modele folosite n acel timp erau modelele ierarhice sin retea saustructurile simple de date. Bazele de date relationale au devenit foarte populare si datoritafaptului ca sunt usor de folosit si au o structura flexibila.

    Principiile si conceptele modelului relational

    Modelul relational simuleaza procesele unei ramuri a matematicii, cunoscuta sub numelede Algebra relationala. Aceste procese implica:

    O colectie de obiecte cunoscute sub numele de relatii; Un set de operatori care actioneaza asupra relatiilor pentru a produce noi relatii.

    O relatie poate fi considerata ca o tabela. Regasirea datelor se realizeaza prin aplicareaoperatorilor relationali asupra acelei tabele.

    Utilizatorii percep o baza de date relationala ca o colectie de tabele bidimensionale. Acestconcept este usor de nteles. Exista doar patru constructii si anume: tabele, coloane, linii si

    cmpuri precum si conceptul valorii cheilor.Tabela O baza de date poate contine una sau mai multe tabele. Fiecare tabela estereferita prin numele ei. O tabela contine informatii despre ceva din lumeareala; de exemplu, produsele unui magazin, clientii unui magazin etc.

    Linia Tabela pastreaza informatiile despre un lucru (de exemplu, despre un produs)ntr-o linie orizontala. Deci linia unui produs va contine tot ceea ce trebuie sastiti despre produs. Puteti pastra acelasi tip informatii n mai multe linii, darinformatia continuta intr-o linie trebuie sa fie unica.

    Coloana Tabela este realizata din coloane verticale de date; pot exista cel mult 254 decoloane. Fiecare coloana este referita prin numele ei. Coloana pastreazainformatia despre un tip si are o anumita dimensiune; ea contine o piesaimportanta a informatiei, de exemplu, cantitatea din stoc.

    Cmp La intersectia dintre o linie si o coloana se gaseste un cmp. Cmpul poatecontine sau nu date. Daca un cmp nu contine date, se spune ca el contine o

    valoare Null. Un cmp nu trebuie sa contina valori care se repeta.Cheia primara Cheia primara este o coloana care defineste n mod unic o linie, de exemplu,codul produsului. Optional, puteti crea o cheie primara pentru o tabela, pentrua respecta regulile de proiectare a bazei de date relationale.

    Cheia externa Cheia externa este coloana prin care definiti modul de asociere ntre douatabele, de exemplu, seria facturii, codul clientului etc.

    Operatorii relationali

    Operatorii relationali se folosesc pentru a regasi si combina datele in vederea utilizariiinformatiei. In tabelul urmator sunt definiti operatorii relationali folositi n bazele de daterelationale.

    Relatia Descriere

    RESTRICTION

    (restrictie)

    Este un operator care regaseste si afiseaza datele din relatie. Este posibil sa

    afiseze toate liniile sau doar liniile care ndeplinesc una sau mai multe conditii.Uneori este denumit submultime orizontalaPROJECTION(proiectie)

    Este un operator care afiseaza numai anumite date din relatie; uneori estedenumit submultime verticala.

    PRODUCT(produs)

    Este rezultatul concatenarii a doua seturi de date. Toate liniile din primul setsunt concatenate (unite) cu liniile din al doilea set. Foarte des produce un nouset foarte mare de date.

    JOIN Este rezultatul concatenarii a doua seturi de date n concordanta cu conditia

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    7/12

    Microsoft AccessBaze de date

    7

    (asociere) specificata.UNION(reuniune)

    Afiseaza liniile unice care apar n oricare din cele doua relatii. UNION ALLpoate fi folosita pentru a afisa toate liniile care apar n una din cele doua relatii.

    INTERSECTION(intersectie)

    Afiseaza toate liniile care apar n ambele relatii.

    DIFFERENCE(diferenta)

    Afiseaza liniile care apar numai n una dintre relarii.

    Proprietatile obiectelor bazei de date relationale

    Proprietatile unei baze de date relationale

    Proprietatile unei baze de date relationale sunt: Pentru utilizator baza de date relationala seamana cu o colectie de tabele

    individuale. Nu are pointeri expliciti; conectarea se face folosind date independente. Este

    important sa asigurati ca proiectul bazei de date sa permite conectarile necesare. Utilizatorul nu specifica calea de acces si nu trebuie sa cunoasca cum sunt

    aranjate datele n mod fizic. Utilizatorul trebuie sa cunoasca ce tabele sunt accesibile prin nume. Utilizatorul interogheaza baza de date folosind un limbaj specializat (SQL

    Structured Query Language). Este un limbaj neprocedural si asemanatorenglezei.

    Limbajul SQL include comenzi pentru regasirea datelor si pentru realizareamodificarilor n baza de date.

    Limbajul SQL furnizeaza utilizatorului un set de operatori pentru partitionarea sicombinarea expresiilor (selectie, proiectie, produs, asociere, reuniune, intersectiesi diferenta).

    Structura bazei de date poate fi modificata foarte usor. Baza de date asigura independenta totala a datelor.

    Proprietatile unei tabele

    O tabela are urmatoarele proprietati: Nu exista linii duplicate. Fiecare linie este identificata n mod unic prin valorile

    cheii primare. Nu exista doua coloane cu acelasi nume. Ordinea liniilor nu are importanta. Ordinea implicita este secventa n care liniile au

    fost introduse. Ordinea coloanelor nu are importanta atunci cnd sunt sortate datele. Valorile cmpurilor sunt atomice; adica ele nu pot fi descompuse n componente

    mai mici.

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    8/12

    Microsoft AccessBaze de date

    8

    Crearea unei baze de date

    Microsoft Access furnizeaza doua metode de crearea a unei baze de date. Se poate creao baza de date goala si apoi se adauga tabelele, interogarile, foirmularele, rapoartele si alteobiecte necesare. Sau se ppoate crea o baza de date folosind Database Wizard. Indiferent demetoda prin care se creaza baza de date, ea poate fi oricnd modificata.

    Crearea unei baze de date goalePentru a crea o baza de date goala se vor executa urmatoarele operatii:1. Cnd deschideti o sesiune Microsoft Access, pe ecran se afiseaza caseta de dialog

    Microsoft Accessce contine optiuni care permit crearea unei baze de date noideschiderea unei baze de date deja existente (vezi figura 8). Pentru a crea o baza dedate goala (fara a folosi un expert), se executa clic pe optiunea Blank Accessdatabase si apoi executati clic pe butonul OK.

    Daca o baza de date este deja deschisa sau caseta de dialog Microsoft Accessestenchisa, se executa clic pe butonul New din bara instrumentelor Database(vezi figura9). Pe ecran se afiseaza caseta de dialog New(vezi figura 9). Se executa dublu-clicpe pictograma Database din pagina General.

    2. In caseta de dialog File New Database(vezi figura 10), se specifica un nume pentrubaza de date si se stabileste dosarul in care va fi salvat fisierul bazei de date. Seexecuta clic pe butonul Create. Pe ecran se va deschide fereastra Database(vezifigura 11).

    Figura 8. Caseta de dialog Microsoft Access

    Permite crearea unei baze de dategoale

    Permite crearea unei noi baze dedate, pagini si proiecte folosind unexpert

    Permite deschiderea unei baze dedate existente.

    Figura 9. Caseta de dialog New.

    Butonul New

    Caseta de dialog New

    Pagina General

    Pictograma Database

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    9/12

    Microsoft AccessBaze de date

    9

    Dupa crearea unei baze de date goale trebuie sa definiti obiectele (tabelele, formularele,interogarile, rapoartele etc.) care vor forma baza de date.

    Figura 10 Caseta de dialog File New Database

    Butonul Create

    n controlul SaveIn se alege

    dosarul in carese va salva baza

    de date

    n controlul File

    name se tasteazanumele bazei dedate.

    Figura 11. Fereastra Database.

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    10/12

    Microsoft AccessBaze de date

    10

    Crearea bazei de date folosind un expert

    Pentru a crea o noua baza de date folosind un expert se executa urmatoarele operatii:1. Cnd pe ecran este afisata caseta de dialog Microsoft Access(vezi figura 8), pentru

    a folosi un expert la crearea bazei de date, se selecteaza optiunea Acces databasewizards, pages, and projects si apoi executati clic pe butonul OK.Daca o baza de date este deja deschisa sau caseta de dialog Microsoft Accesseste

    nchisa, se executa clic pe butonul New din bara instrumentelor Database(vezi figura9). Pe ecran se afiseaza caseta de dialog New(vezi figura 9). Se activeaza paginaDatabases(vezi figura 12).

    2. n pagina Databases, se executa dublu-clic pe pictograma tipului de baza de date cese va crea.

    3. In caseta de dialog File New Database(vezi figura 10) se tasteaza numele fisieruluibazei de date si se stabileste locul in care va fi stocat.

    4. Se executa clic pe butonul Create pentru a ncepe definirea noii baze de date.5. In continuare, expertul selectat afiseaza o serie de casete de dialog prin care solicita

    informatii suplimentare pentru a crea baza de date solicitata. Informatiile cerutedepinde de tipul de baza de date ales.

    Pentru a exemplifica utilizarea unei baze de date folosind un expert, in continuare sevor prezenta casetele de dialog ale expertului pentru baza de date EventManagement.

    6. In prima pagina a expertului (vezi f igura 13) se face o prezentare a scopului bazei dedate. Pentru a continua crearea bazei de date, se executa clic pe butonul Next.

    Figura 12. Pagina Databasesa casetei de dialog New.

    Figura 13. Prima pagina a expertului contine iformatii despredestinatia bazei de date.

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    11/12

    Microsoft AccessBaze de date

    11

    7. In a doua pagina a expertului (vezi figura 14), se stabilesc campurile pentru fiecaretabela care va intra in compunerea bazei de date. Tabelele din baza de date suntafisate in lista Tables in the database, iar campurile sunt prezentate in lista Fileds inthe table. Pentru a executa aceasta operatie se procedeaza astfel: in lista din stangase selecteaza tabela dorita, iar in lista din dreapta se va executa clic pe casetele devalidare

    8. In a treia pagina a expertului (vezi figura 15),

    9. In a patra pagina a expertului (vezi figura 16),

    Figura 14.

    Figura 15.

    Figura 16.

  • 8/4/2019 Access Lectia 1 Crearea Bazelor de Date

    12/12

    Microsoft AccessBaze de date

    12

    10. In a cincea pagina a expertului (vezi figura 17),

    11. In a sasea pagina a expertului (vezi figura 18),

    (vezi figura 19),Urmati indicatiile din casetele de dialog ce apar pe ecran. La terminarea operatiei de creare abazei de date pe ecran se afiseaza fereastra Databasecontinnd obiectele definite de wizard(vezi figura 12), pe baza indicatiilor pe care le-ati dat in casetele de dialog.

    Figura 17.

    Figura 18.