Metode Generale de Predare a Informaticii. Utilizarea Programului Microsoft Access Pentru Proiectarea Unei Aplicatii

CUPRINS

Cap.I. Introducere 4

1.1. Motivarea alegerii temei 4

1.2. Scurt istoric 5

Cap. II. Baze de date 7

2.1. Informații și date. Problema organizării datelor 7

2.2. Baze de date – clasificare 9

2.3. Protecția și securitatea datelor 11

2.4. Componența unei baze de date 13

2.5. Arhitectura internă a sistemelor de baze de date 14

2.6. Independența datelor 16

2.7. Limbaje SGBD 16

Cap.III. Proiectarea unei baze de date 20

3.1. Ce este proiectarea? 20

3.2. Modelul entitate-relație 21

3.3. Construcția schemelor relație 22

3.4. Diagrama entitate-relație 24

3.5. Constrângeri de integritate 25

3.6. Normalizare. Forme normale. 27

3.7. Structuri de indecși în tabelele de date 28

Cap.IV. Organizarea unei baze de date Access 2007 32

4.1. Tabele 32

4.2. Interogări 39

4.3. Formulare 41

4.4. Rapoarte 43

Cap. V. Metode generale de predare și învățare a informaticii 46

5.1. Metode generale de învățare 46

5.1.1.Expunerea sistematică a cunoștințelor 47

5.1.2. Metoda conversației 48

5.1.3. Problematizarea și învățarea prin descoperire 49

5.1.4. Modelarea 50

5.1.5. Exemplificarea sau demonstrarea materialului intuitiv 52

5.1.6. Metoda exercițiului 53

5.1.7. Metoda învățării în grupe mici 61

5.1.8. Metoda lucrului cu manualul și documentația 62

5.1.9. Metoda jocurilor didactice 64

5.1.10. Instruirea programată și învățarea asistată de calculator 64

5.2. Instrumente (mijloace) de predare 66

5.3. Metode de evaluare pentru atingerea obiectivelor 67

5.4. Anexe – proiecte didactice, teste 68

Cap. VI. Proiectarea aplicației 94

Bibliografie 98

Cap.I. Introducere

Motivarea alegerii temei

Lucrarea “Utilizarea programului Microsoft Access pentru proiectarea unei aplicații” aduce în prim plan câteva aspecte esențiale ale tehnologiei informației ca disciplină regăsită în planul de învățământ al sistemului educațional românesc. Motivarea elevilor pentru învățarea acestei discipline presupune informații accesibile și teme atractive, dar mai cu seamă descoperirea unor tehnici și informații care să-i ajute să se organizeze în societate. Prin această lucrare, mă adresez elevilor, dar și colegilor din învățământul preuniversitar și prezint o temă mereu actuală, anume utilizarea programului Microsoft Access.

În prezent orice individ al societății trebuie educat și instruit pentru a deține minime cunoștințe de informatică ca să reușească în propria gospodărie sau la locul de muncă. Desigur se pune întrebarea de câtă informatică are nevoie? Profesorul de informatică are menirea să transmită informații în funcție de formă de învățământ și categorie de vârstă. Consider că rămâne absolut important să nu pierdem ca profesor din vedere faptul că e important să se predea calitativ și nu cantitativ, adică chiar dacă furnizăm mai puține informații acestea să fie consolidate. Am ales ca temă utilizarea programului Microsoft Access deoarece este prea puțin teoretizat și chiar și în ce privește partea practică se găsesc prea puține aplicații, iar dezvoltarea sistemelor de baze de date reprezintă un domeniu foarte important al tehnologiei informației. Deprinderea acestui program încă din liceu are un impact decisiv asupra modului de organizare și funcționare a întregii societăți, având în vedere că noi pregătim tineri pentru domenii ca: învățământ, sănătate, administrație publică etc. Prin lucrarea de față mă adresez elevilor mei de la toate profilurile pentru că prezint modul de implementare a unei baze de date, care este în fapt o modalitate de stocare a volumelor mari de date pe suport de memorie de capacitate corespunzătoare. Voi prezenta tehnicile și metodele specifice domeniului, dezvoltate cu scopul de a realiza stocarea și prelucrarea acestor volume de date. Deținerea acestor cunoștințe este absolut necesară și se aplică în tot circuitul societății: comunicație, comerț, servicii bancare, sănătate, transport, asigurări, învățământ etc. Sistemele de baze de date sunt indispensabile acestui sistem pentru că majoritatea dintre noi depun sau extrag bani de la bancă, fac rezervări la bilete de tren sau avion, cumpără produse, caută cărți într-o bibliotecă computerizată etc.

Pentru a atinge dezideratul didacticii moderne accentuez aspectul practic al acestui concept, lucrez împreună cu elevii determinându-i să conștientizeze nevoia deținerii acestor informații pentru că așa cum spunea Bruner “a instrui pe cineva într-o disciplină nu înseamnă să înmagazineze în minte asemenea rezultate, ci al învăța să participe la procesul care face posibilă crearea de cunoștințe”.

În concluzie, învățarea novatoare trebuie să fie utilă, dar și temeinică, iar faptul că noi ca și cadre didactice reușim să aprofundăm astfel de teme ne determină să conștientizăm responsabilitatea profesională pe care o avem “pentru a angaja fiecare elev întru-n proces de învățare cu semnificație personală”, așa cum ne sugerează Charlotte Danielson.

1.2. Scurt istoric

Mainfram-urile au fost primele sisteme de calcul pe care au fost construite primele baze de date fiind manipulate de către specialiști în gestionarea acestor sisteme. Bazele de date numite flat file sunt primele aplicații de baze de date ce foloseau un singur fișier pentru stocarea întregii informații din baza de date și care au apărut o dată cu dezvoltarea sistemelor personale (PC). Aceste baze de date erau de tip Xbase, care este de fapt limbajul foarte repede răspândit și folosit în scopul manipulării datelor. FoxPro, FoxBase, dBase sunt sistemele care au folosit limbajul de tip Xbase. Acestea cu ajutorul sistemului MS-DOS rulau și foloseau limitările lui. FoxPro este un sistem dezvoltat inițial de firma Fox Software cu numele de FoxBase și folosește cu cea mai răspândită aplicație Xbase. De pildă și astăzi există firme, cum ar fi organizația care gestinează EuroTunel care stochează date extreme de importante în baze de date FoxPro. Firma Microsoft Corporation este cea care a propulsat aplicația Access, bazată în mare parte pe logica de stocare a sistemului FoxPro ce fusese achiziționat de firmă în 1989. Această lansare a avut loc la începutul anilor 1990. Drept urmare foarte repede Access a devenit cea mai importantă aplicație de gestiune de pe sistemele personale a bazelor de date flat file. În momentul în care accesul a ajuns la versiunea 2003 SGBD-ul MS-Access s-a schimbat, fiind scalabil de baza de date Microsoft SQL Server .

De asemenea Access-ul a primit o dată cu versiunea 7 un limbaj de programare dedicat bazat pe limbajul Visual Basic (Visual Basic for applications-VBA). Acesta ajută la manipularea mai ușoară a datelor, la utilizarea automatismelor pentru interogări variate, afișări etc.

Când a apărut versiunea nouă limbajul integrat s-a potrivit cu Visual Basic și cu limbajul utilizat de MS SQL Server. Mașina pe care se rulează o aplicație specific MS-Access nu mai are nevoie de prezența acestui limbaj întrucât cu ajutorul versiunii 2003 se pot genera programe executabile. SGBD-ul FoxPro chiar de la versiunile sub MS-DOS aveau posibilitatea de a genera executabile asemănătoare.

Sistemele dedicate acestui lucru sunt foarte folositoare, de aceea piața sistemelor server s-a dezvoltat și diversificat uluitor de mult. Baza de aplicații server a ajuns la versiunea nouă care a fost lansată de Oracle. Extensiile orientate pe obiecte au fost introduse chiar de la versiunea 8i.

Cea mai completă infrastructură dedicată rulării aplicațiilor pe internet este Oracle 9i. Oracle 9i DataBase și Oracle 9i Application Server și pachetul Oracle 9i Developer Suite ( care cuprinde pachetul de unelte de dezvoltare ) sunt cuprinse de Oracle 9i.

Serverul de baze de date SQL Server 2000 a fost lansat în 2000 de către Corporația Microsoft și este un concurent direct al aplicațiilor Oracle, având în vedere că a primit încredere 100% pentru limbajul XML, care poate interoga direct serverul dintr-un browser.

DB2 cu varianta 7 a fost lansată în 2000 de compania IBM. Este o aplicație pur obiectală, asemănătoare cu Oracle și implementată pe mai multe platforme, inclusive Linux.

My SQL este cel mai folosit server de date pe sistemele Linux, care rămâne preferat în ciuda faptului că exită un produs gratuit, PostgreSQL. Trebuie precizat că este folosit My SQL pentru că are o extensie înglobată pentru limbajul cel mai folosit pe partea de Server web PHP și datorită ușurinței administrării acestui server pentru că are un client de accesare inclus.

În privința modalităților de depozitare a datelor acestea sunt numeroase iar aplicațiile de computer utile stochează date în moduri proprii. Oamenii de afaceri conștientizează tot mai mult faptul că informațiile importante rămân neutilizate sau neintegrate deoarece nu au un format potrivit. Pe internet companiile sunt instalate și ele se interesează de reacțiile la produsele lor, care vin pe e-mail. Însă aceste companii nu prea pot face uz de informațiile primite prin e-mailuri și foarte puține companii utilizează efficient datele pe bază de HTML.

Cap. II. Baze de date

2.1. Informații și date. Problema organizării datelor

Toată societatea, oricum a fost formată s-a caracterizat prin entități faptice exprimate prin numere, percepții sau observații numerice realizate de indivizi sau de mașini. Aceste entități independente și neevaluate au primit numele de date. Activitățile productive, de conducere, de cercetare, educaționale, artistice au date care sunt informații brute ce pot fi evaluate, ordonate și prelucrate în funcție de scopurile propuse.

Transformarea acestor date duce la obținerea informațiilor care sunt o interpretare a datelor cu privire la situații particulare sau cu înțelegerea de către mintea umană în general.

Aceste informații stau la baza raționamentelor, experimentelor, care conduc individual la evoluție, adică la noi cunoștințe.

În spijinul acestor cunoștințe și informații noi vine această producere de informații prin care se constituie un fond informațional ce-l ajută pe om ca activitatea sa să aibă o finalitate practică.

Informația se definește ca o comunicare susceptibilă de a produce cunoștințe. Ea are un caracter semantic și de noutate, de a contribui la doza de cunoștințe primită de individ. Informația vizează mereu obiecte, personae, procese, fenomene, locuri, situații, condiții etc. Informția trebuie să se caracterizeze prin utilitate, precizie, să fie completă, fără digresiuni, care să-l deruteze pe receptor, fapt ce ar duce la confuzii sau greutăți în luarea unor decizii. În acest sens nu trebuie uitate cuvintele înțeleptului antic Eschil care afrma că înțelept nu este cel care știe lucruri multe ci lucruri utile. De asemenea, nu trebuie ignorată nici subiectivitatea unei informții, adică faptul că nu pentru toată lumea aceeași informație are aceeași semnificație.

Datele reprezintă concretizarea și reprezentarea simbolică a informațiilor, adică folosirea semnelor, literelor, cifrelor, într-o formă convențională, convenabilă unei comunicări, cum ar fi scrisă, vorbită, luminoasă etc. Acestea arată ce se înțelege prin număr sau cuvânt, nu furnizează judecăți sau interpretări și nici suport pentru vreo acțiune. Ele sunt un suport obținut de oameni cu ajutorul echipamentelor și operațiunilor. Din acestea se obțin apoi informații .

Informația este semnificația ce poate fi desprinsă dintr-un ansamblu de date pe baza asociațiilor dintre acestea, deci este partea ce poate fi utilizată dintr-un ansamblu de date.

Informațiile sunt de fapt răspunsuri la întrebări cum ar fi “cine, unde când”.

Datele sunt înțelese ca atribute și valori. De pildă, produs=bicicletă, cantitate=5, preț=450. Informația este formulată în propoziții, cum ar fi “s-au vândut cinci biciclete cu prețul de 450 lei”. Astfel informația necesită o înțelegere a relațiilor dintre date.

Colecția de date înseamnă un ansamblu de date cu privire la același fenomen, obiect sau situație.

Desigur între colecții de date sau între componentele unei colecții există relații care să determine o anumită structură, de exemplu un anume fel de ordonare sau de prelucrare a datelor. Aceste relații pot fi unidirecționale sau bidirecționale.

Relația unidirecțională determină obținerea unei valori sau a mai multora din componenta legată, plecând de la o componentă/părinte, pe când o relație bidirecțională determină aceleași date pornind de la ambele colecții.

Structura de date poate fi definită ca o colecție de date pe care s-au definit anumite relații și căreia îi este specific un anumit mecanism de selecție și identificare a componentelor. Acest mecanism de selecție este implementat în programele de prelucrare a datelor respective, în sistemul de operare, de gestiune sau la nivelul programelor aplicative.

În ce privește organizarea de baze de date aceasta se supune cerințelor complexe impuse tehnologiei moderne pentru ca mai mulți utilizatori să aibă acces în același timp la aceleași date. Acest fapt a dus la perfecționarea metodelor de organizare și așa au apărut bazele de date. Dacă vedem în bazele de date un depozit central de date înseamnă că înțelegem că pot fi accesate de utilizatori diferiți și nu neaparat de programatori.

O bază de date trebuie însă să facă față cerințelor, uneori contradictorii și va conține datele strict necesare acestora întru-n format acceptat de majoritate, iar programele special de gestiune sunt grupate de asemenea sub numele de SGBD/Sistem de Gestiune a Bazei de Date.

Baza de date reprezintă o colecție de date legată logic și funcțional, cum ar fi o bază pentru cantina unui spital, evidența populației etc.

Baza de date (BD)se definește ca un ansamblu de date interconectate, împreună cu descrierea lor, care răspunde calităților de centralizare, de coordonare, integrare și difuzie a informațiilor și care asigură satisfacerea tuturor necesităților de prelucrare ale tuturor utilizatorilor dintr-un system.

2.2. Baze de date – clasificare

Există mai multe criterii de clasificare ale sistemelor de baze de date.

Clasificare după modelul de date.

Majoritatea sistemelor de baze de date din prezent sunt proiectate în modelul de date relațional sau în modelul de date orientat obiect. Dezvoltarea continuă a acestor modele a condus către o altă categorie de baze de date numite obiect-relaționale, care combină caracteristicile modelului relațional cu caracteristicile modelului orientat obiect.

Modelul de date relațional (Relational Model) se bazează pe noțiunea de relație din matematică, care corespunde unei entități de același tip și are o reprezentare ușor de înțeles și de manipulat, ce constă dintr-un tabel bidimensional, compus din linii și coloane. Fiecare linie din tabel reprezintă o entitate și este compusă din mulțimea valorilor atributelor entității respective, fiecare atribut corespunzând unei coloane a tabelului. Modelul de date relațional a fost dezvoltat de cercetătorul E.F.Codd de la compania IBM, care a publicat în 1970 lucrarea “Un model relațional de date pentru bănci mari de date partajate”. Și prin alte lucrări, Codd, ca și alți cercetători, R. Boyce, J.D. Ullman etc au perfecționat modelul de date relațional și au permis dezvoltarea sistemelor de baze de date.

Chiar dacă noțiunile de relație și tabel diferă în esența lor, relația reprezentând o mulțime de entități și tabelul o reprezentare vizuală a acesteia, cele două noțiuni se pot folosi, în general pentru același scop.

Pe baza acestor noțiuni, se poate esențializa modelul relațional prin următoarele caracteristici:

Datele sunt considerate de utilizatori ca tabele;

De pildă, operatorii relaționali care pot fi folosiți pentru prelucrarea datelor generează un tabel rezultat din tabelele operanzi.

Asocierea dintre tabele se realizează prin intermediul egalității valorilor unor atribute comune, ceea ce permite rezolvarea oricărei interogări.

Pe lângă avantajul unui model de date precis și simplu, sistemele de baze de date relaționale mai beneficiază și de un limbaj de programare admis și preluat, de exemplu limbajul SQL (Structured Query Language), pentru care au fost emise mai multe standarde de către Organizația Internațională de Standardizare (International Standardization Office-ISO). Majoritatea sistemelor de gestiune a bazelor de date relaționale actuale implementează versiunea din anul 1992 a standardului pentru limbajul SQL, denumită SQL 92 sau SQL2.

Modelul de date orientat obiect (Object Model) este un concept unificator în știința calculatoarelor, fiind aplicabil în programare, în proiectarea hardware, a interfețelor, a bazelor de date etc. Sistemele de baze de date orientate obiect se bazează pe limbaje de programare orientate obiect cu capacități de persistență, în care datele sunt independente de timpul de viață al programelor care le creează sau accesează, prin memorare pe suport magnetic (disc).

Există și unele compartimente, mai ales cele care manipulează tipuri de date complexe, cum ar fi proiectarea asistată de calculator, sisteme de informații geografice, medicină, farmacie etc, în care modelul relațional s-a dovedit a fi insuficient și cu performanțe de execuție reduse.

Caracteristicile importante ale modelului orientat obiect sunt: abstractizarea, moștenirea, încapsularea, modularizarea.

În programarea orientată obiect, programele sunt aranjate ca și colecții de obiecte cooperante, fiecare obiect fiind o instanță a unei clase. Fiecare clasă reprezintă abstractizarea unui tip de entitate din realitatea modelată, iar clasele sunt membre ale unei ierarhii de clase, legate între ele prin relații de moștenire. Orice obiect este încapsulat, ceea ce înseamnă că reprezentarea lui (adică structura internă a acelui obiect) nu este vizibilă utilizatorilor, care au acces doar la funcțiile (metodele) pe care acel obiect este capabil să le facă. Clasele și obiectele unui program orientat obiect sunt grupate în module, care pot fi compilate separat și între care există granițe clare și documentate, ceea ce reduce complexitatea utilizării.

Din perspectiva realizării bazelor de date, o altă proprietate a modelului obiect, persistența, este cea care asigură memorarea transparentă pe suport magnetic a obiectelor parte din baza de date orientată obiect.

Modelul de date obiect-relațional (Object-Relational Model) reprezintă extinderea modelului relațional cu caracteristici ale modelului obiect, extindere necesară pentru realizarea bazelor de date care definesc și prelucrează tipuri de date complexe.

În esență, modelul obiect-relațional păstrează structurarea datelor în relații (reprezentate ca tabele), dar adaugă posibilitatea realizării unor noi tipuri de date, pentru clase de valori ale atributelor. Tipurile de date definite de utilizator pot fi lărgite prin mecanismul de moștenire și pentru fiecare tip sau subtip se pot defini strategii pe care le pot executa obiectele de acel tip. De asemenea, mai sunt încă în funcțiune baze de date modele mai vechi: modelul ierarhic și modelul rețea.

În modelul de date ierarhic (Hierarchical Model) o bază de date se reprezintă printr-o structură ierarhică de înregistrări de date (records) conectate prin legături (links). Modelul ierarhic a fost primul model folosit pentru dezvoltarea bazelor de date. Schema conceptuală a unei baze de date în modelul ierarhic se reprezintă printr-un număr oarecare de scheme ierarhice. O schemă ierarhică este un arbore direcționat, reprezentat pe mai multe niveluri, în care nodurile sunt tipurile de înregistrări, iar arcele sunt tipurile de legături. Fiecare nod (cu excepția nodului rădăcină) are doar o legătură către un nod de pe un nivel superior (nodul părinte) și fiecare nod (cu excepția nodurilor frunză) are una sau mai multe legături către noduri de pe nivelul imediat inferior (noduri fii).

Modelul de date rețea (Network Model) folosește o structură de graf pentru definirea schemei conceptuale a bazei de date; nodurile grafului sunt tipuri de entități (înregistrări, records), iar muchiile grafului reprezintă în mod explicit asocierile (legăturile, links) dintre tipurile de entități. Asemeni modelului ierarhic, dezavantajul principal al modelului rețea este acela că fiecare interogare trebuie să fie prevăzută încă din faza de proiectare, prin memorarea explicită a legăturilor între tipurile de entități. În plus, complexitatea reprezentării datelor în modelul rețea este deosebit de ridicată, iar programatorii trebuie să o cunoască pentru a putea realiza aplicațiile necesare.

Clasificare după numărul de utilizatori.

Bazele de date sunt sisteme multiutilizator, adică permit accesul concurent (în același timp) a mai multor utilizatori la aceeași bază de date. Există și un număr mai mic de sisteme monoutilizator, adică suportă accesul doar al unui utilizator (la un moment dat).

Clasificare după numărul de stații pe care este stocată baza de date

Există două categorii de sisteme de baze de date: centralizate și distribuite.

Un sistem de baze de date centralizat (Centralized Database System) este un sistem de baze de date în care datele și sistemul de gestiune sunt stocate pe un singur calculator.

Un sistem de baze de date distribuit (Distributed Database System) poate avea atât datele, cât și sistemul de gestiune, distribuite pe mai multe calculatoare interconectate printr-un sistem de comunicație.

2.3. Protecția și securitatea datelor

Având în vedere că bazele de date sunt foarte importante pentru utilizatori, facilitând buna organizare a unui sistem, protejarea și securizarea datelor este o acțiune foarte importantă, iar tehnicile de protecție trebuie cunoscute. Prin protecția și securitatea datelor se înțelege totalitatea mijloacelor, tehnicilor și a mecanismelor destinate prevenirii distrugerii, modificării sau folosirii neautorizate a informației protejate.

Referitor la protecția și securitatea datelor, în literatura de specialitate se numesc următoarele concepte de bază:

Securitatea datelor – totalitatea măsurilor de protecție împotriva distrugerii accidentale sau intenționate, a modificării neautorizate sau a divulgării acestora;

Caracterul secret – este o teorie ce se aplică la un individ sau organizație și constă în dreptul acestora de a decide ce informații se pot folosi în comun și în ce condiții;

Confidențialitatea – se aplică la date și se referă la statutul acordat, acesta reprezentând nivelul sau gradul de protecție ce trebuie acordat informației respective;

Integritatea – se referă la restricția ca sensul datelor să nu difere față de cel înscris pe documentul rădăcină, impunând totodată ca datele să nu fie alterate accidental sau intenționat.

Noțiunile de mai sus sunt strâns legate între ele, măsurile parțiale se suprapun. Securitatea și protecția datelor din baza de date constituie un domeniu foarte larg, care prezintă două aspecte principale: pe de o parte, elementele legale și etice privind drepturile de acces la anumite informații, iar pe de altă parte, elementele legate de organizarea sistemelor informatice din punct de vedere al modalităților de acces la datele stocate. Unele date care există în baza de date sunt strict private și nu pot fi accesate legal de către persoane neautorizate.

Diferite reglementări guvernamentale sau legi existente în majoritatea țărilor stabilesc ce informații privind activitatea instituțiilor sau a persoanelor pot avea caracter public și în ce condiții. La nivelul sistemelor informatice se pot diferenția aspecte de securitate la nivel fizic (hardware), la nivelul sistemului de operare și la nivelul sistemului de gestiune al bazei de date. În principal, de problemele de protecție și securitate este responsabil administratorul bazei de date, care are un cont privilegiat în sistemul de gestiune (numit în general cont de sistem – system account) care prevede drepturi foarte puternice, pe care alte conturi sau utilizatori nu le dețin. Prin intermediul contului de sistem administratorul bazei de date poate efectua mai multe operații: crearea conturilor, acordarea sau retragerea avantajelor etc. Orice persoană care dorește să se conecteze (log in) la o bază de date trebuie să aibă un cont (account, user) și o parolă (password). Sistemul de gestiune verifică contul și parola și autentifică acel utilizator, dacă acestea sunt corecte.

O altă tehnică de protecție și securitate a datelor este criptarea datelor (Data Encryption), prin care datele importante sunt codate folosind diferiți algoritmi de codare, mai ales atunci când sunt transmise prin rețelele de comunicație. Interpretarea datelor criptate este imposibilă dacă nu este cunoscută cheia (cifrul) de codare. În felul acesta numai utilizatorii autorizați, care dețin cheile de decriptare pot interpreta cu ușurință aceste date.

O altă strategie de securizare a bazei de date pentru aplicațiile web ar fi instalarea unui firewall, acesta fiind un calculator pe care este instalat un software special, ce permite accesarea calculatorului pe care este stocată baza de date numai de către anumite calculatoare.

Deci, prin securitatea bazei de date se înțelege o mulțime de măsuri destinate protecției informațiilor conținute în baza de date împotriva unor alterări, distrugeri sau divulgări neautorizate.

2.4. Componența unei baze de date

Un sistem de baze de date (Database System) reprezintă un ansamblu de componente care asigură crearea, utilizarea și întreținerea uneia sau mai multor baze de date.

O bază de date este formată:

hardware,

software,

utilizatori,

date persistente.

Calculatoarele pe care sunt instalate de obicei sistemele de baze de date sunt PC standard, dar și calculatoare multiprocesor foarte puternice. Performanțele generale de operare ale calculatorului (numărul și viteza procesoarelor, dimensiunea și viteza de operare a memoriei etc) influențează în mod corespunzător performanțele sistemului de baze de date. Cea mai importantă caracteristică a calculatorului pe care operează sistemul de baze de date este capacitatea hard disk-ului, folosită pentru memorarea datelor din baza de date.

Deoarece într-un sistem de baze de date este necesară accesarea rapidă la oricare dintre înregistrările de date, pentru memorarea acestora se folosesc discurile magnetice (hard disk-uri).

Benzile magnetice (care oferă acces secvențial la înregistrările de date) se folosesc pentru duplicarea (backup), salvarea și restaurarea datelor.

Între baza de date (colecția de date memorate fizic în fișiere pe hard disk-uri) și utilizatorii sistemului există un nivel software, denumit sistem de gestiune a bazei de date (SGBD)-(DataBase Management System). O bază de date computerizată poate fi realizată și menținută fie cu ajutorul unui sistem de programe de aplicație caracteristică acestui scop, fie cu acest SGBD.

Figura: Componente ale sistemului de baze de date

Utilizatorii unui sistem de baze de date se împart în câteva categorii:

• Programatorii de aplicații sunt cei care dezvoltă aplicațiile de baze de date în anumite medii de programare. Aplicațiile pot fi aplicații desktop (stand alone) și aplicații client-server.

Aplicațiile desktop sunt aplicațiile care se instalează și rulează pe un anumit calculator. Acestea sunt aplicații implementate în medii de programare cum ar fi: Visual Basic, Visual C, Java, C++, Delphi etc, iar aplicațiile client server sunt cele care se instalează pe un calculator numit server și rulează de pe orice calculator aflat în acea rețea. Aceste aplicații sunt aplicații web implementate în limbajul de scripturi php sau asp, cu interfața proiectată în html. Pentru ca aceste aplicații să funcționeze trebuie instalat și un server de web, cum ar fi Apache sau IIS și pe fiecare calculator de unde va fi accesată aplicația, precum și un browser de web: Internet Explorer, Netscape, Modzilla etc.

• Utilizatorii obișnuiți sunt aceia care accesează baza de date prin intermediul unei aplicații de baze de date. Acești utilizatori au drepturi limitate asupra accesului la datele din baza de date, ei neavând cunoștințe aprofundate asupra structurii și a datelor din acea bază de date.

• Administratorul bazei de date (Data Base Administrator) care este o persoană autorizată, care are ca rol administrarea resurselor, permiterea accesului la baza de date, a coordonării și verificării utilizatorilor acelei baze de date. Administratorul bazei de date realizează și operații frecvente de salvare a datelor (backup) și de reconstruire a lor atunci când se impun.

Datele memorate într-o bază de date sunt date persistente, adică date care rămân păstrate pe suport magnetic, independent de execuția programelor de aplicații. Datele persistente ale unei baze de date se introduc, se șterg sau se actualizează în funcție de date de intrare survenite de la tastatură. La început datele de intrare sunt date nepersistente, ele devenind persistente după ce au fost validate de SGBD. Datele de ieșire ale unui sistem de baze de date sunt tot date nepersistente, ele provenind din operații de interogare a bazei de date și puse pentru utilizatori sunt formă de raport, afișare etc.

2.5. Arhitectura internă a sistemelor de baze de date

Arhitectura internă a sistemului de baze este construită pornind de la standardul ANSI/X3/SPARC (1975 ) pe trei niveluri funcționale.

Modelul datelor este un set de concepte folosit cu scopul evidențierii structurii datelor. Structura bazei de date înseamnă tipul datelor, legătura dintre ele, restricțiile ce trebuie îndeplinite. Bazele de date cele mai numeroase au un set de operații care arată modul prin care să fie accesate.

Întorcându-ne la cele trei niveluri funcționale ale unei baze de date, care au ca scop separarea aplicațiilor utilizatorului, o schemă internă ce cuprinde aceste trei niveluri, poate fi după cum urmează:

• Nivelul intern se realizează din schema internă ce descrie structura de stocare fizică a datelor în baza de date, utilizând un model al datelor fizice. La acest nivel se descriu toate detaliile stocării, precum și modul de acces la date.

• Nivelul conceptual sau schema conceptuală descrie structura întregii baze de date pentru un grup de utilizatori. La nivelul conceptual se face o descriere completă a bazei de date, ascunzând detaliile legate de stocarea fizică, concentrându-se asupra descrierii entităților, tipurilor de date, relațiilor dintre ele, precum și a restricțiilor asociate. Poate fi utilizat cu rezultate foarte bune, la model de nivel înalt sau un model specific de implementare.

• Nivelul extern sau nivelul vizual (utilizator) include o colecție de scheme externe ce descriu baza de date prin prisma mai multor utilizatori. Fiecare grup de utilizatori prezintă baza de date prin prisma propriilor interese. Există tendința la acest nivel ca entități de utilizatori să ascundă detalii de care nu interesează. Și la acest nivel se pot folosi modele de implementare sau modele de nivel înalt.

Nu este o graniță clară între aceste niveluri, însă se observă la mai multe SBBD-uri un nivel conceptual puternic care are ca funcție înlocuirea celorlalte niveluri. Apoi se observă și o contopire atunci când se dezvoltă aplicațiile a nivelului conceptual și extern. De asemenea trebuie sesizat și faptul că structura pe trei niveluri constituie în fapt o simplă descriere a datelor la nivel fizic. Utilizatorii au în vedere doar schema externă, astfel că schimbarea schemei externe în schemă conceptuală revine SGBD-ului. De la modelul conceptual cererile pornesc spre modelul intern în vederea procesării și aplicării datelor stocate.

Cartografierea sau mapping-ul reprezintă transferul cererilor ți rezultatelor între aceste nivele, un mare consumator de timp pentru care SGBD-ul nu posedă un nivel extern.

Nivel extern

Nivel conceptual

Nivel intern

Figura: Arhitectura internă a unui sistem de baze de date

2.6. Independența datelor

Desigur că organizarea pe trei niveluri este fundamentală deoarece evidențiază independența datelor având în vedere capacitatea de a schimba modificarea sistemului bazei de date pentru orice nivel fără a le modifica pe cele superioare. Nivelurilor conceptual și intern le corespunde două tipuri de independențe de date.

Prin independența logică se înțelege capacitatea schimbării schemei conceptuale fără a atrage după sine transformări în schema externă sau în programele de aplicație. Este posibilă schimbarea schemei conceptuale prin lărgirea bazei de date ca urmare a adăugării de noi tipuri de înregistrări sau a datelor înseși sau prin reducerea bazei de date ca urmare a reducerii înregistrărilor. Schema conceptuală după aceste operații se referă la schema conceptuală a datelor existente. Un exemplu de expandare al bazei de date este cel de inserare a unei noi coloane la un tabel.

Independența fizică este definită prin capacitatea de schimbare a schemei interne fără schimbarea schemei conceptuale sau externe. Schimbarea schemei conceptuale poate fi generată ca urmare a reorganizării fizice a unor fișiere, prin crearea de noi structuri de acces menite să asigure intrarea eficientă la date. Dacă sistemul conține SGBD pe mai multe niveluri, catalogul trebuie să reflecte felul în care diverse cereri se implementează la fiecare nivel. Cele enunțate anterior pledează pentru utilizarea arhitecturii pe trei nivele.

2.7. Limbaje SGBD

Trebuie să existe limbaje potrivite pentru toți utilizatorii bazelor de date. Atunci când avem o bază de date și un SGBD trebuie să se creeze și o schemă internă și conceptuală a bazei de date respective.

Data Definition Language (DDL) este un limbaj utilizat de administratorul bazei de date și de proiectant atunci când definesc ambele scheme. Un compilator DDL procesează instrucțiunile cu scopul de a găsi informație despre construcție și de a memora aceasta în catalogul SGBD.

Din specificarea schemei conceptuale reiese faptul ca DDL este utilizat pentru a reliefa diferența între nivelul conceptual și cel intern.

Storage Definition Language (SDL) este limbajul utilizat pentru definirea schemei interne. Ambele limbaje pot asigura legătura între cele două nivele și DDL-ul semnifică definirea bazei de date.

View Definition Language (VDL) este al treilea limbaj necesar pentru utilizatori și legătura acestora cu nivelul conceptual. DDL acceptă declarații specifice nivelului extern pentru că pentru multe sisteme de baze de date este important.

DDL conține instrucțiuni ce pot fi într-un limbaj de programare sau pot fi compilate separat. După ce s-a încărcat baza de date și a fost realizată schema conceptuală utilizatorul poate să dispună de date, operând prin căutare, inserare, ștergere, modificare, fapt pentru care SGBD dispune de Data Manipulation Language (DML).

Un DML este alcătuit din:

un DML de nivel înalt;

un DML de nivel scăzut.

DML de nivel ridicat este utilizat pentru numirea operațiilor complexe în baza de date într-o formă precisă. Operațiile utilizând această secțiune sunt realizate fie într-o formă interactivă de la terminal, fie prin utilizarea unui limbaj de programare general.

DML de nivel scăzut este conceput utilizând un limbaj de programare general. Această secțiune contribuie la realizarea operațiilor critice, de exemplu modificarea arhitecturii unui tabel , procesarea separată a înregistrărilor bazelor de date. Această procedură se mai numește și înregistrare cu înregistrare, întrucât operează și asupra înregistrărilor individuale.

Comanda pentru DML de nivel înalt reprezintă cererea de acces la date dar nu arată cum se realizează aceasta, de aceea limbajul se numește declarativ. Comenzile DML, fie de nivel înalt fie de nivel scăzut sunt aplicate într-un limbaj de programare universal numit limbaj gazdă, iar DML este numit limbaj de date.

Query Language este DML-ul de nivel înalt folosit interactiv.

Interfețele corespunzătoare tuturor categoriilor de utilizatori trebuie puse la dispoziție de SGBD. Facilitarea conexiunii dintre utilizatori si sistemul de baze de date este scopul acestor interfețe, care pot fi clasificate astfel:

• Interfețe bazate pe meniuri = oferă utilizatorului o listă de opțiuni, numite meniuri care îi ajută la crearea cererilor. O comandă specifică este făcută treptat prin compunerea opțiunilor specifice din meniu, de aceea nu este necesară memorarea unor comenzi.

• Interfețe grafice = oferă utilizatorului o diagramă. Utilizarea acestei diagrame presupune ca utilizatorul să poată formula o cerere și frecvent interfețele grafice sunt combinate cu meniuri.

• Interfețe bazate pe forme = sunt acelea prin intermediul cărora utilizatorul poate completa formele cu noile date pe care dorește să le introducă, sau folosește aceste forme pentru a cere SGBD-ului să obțină datele necesare.

• Interfețe în limbaj natural = acceptă cereri scrise în limba engleză sau alte limbi de circulație internațională. O schemă proprie identică cu schema conceptuală a bazelor de date este inclusă într-o interfață în limbaj natural, în mod normal. Un set standard de cuvinte cheie procesate pe baza schemei interne duce la înțelegerea cererilor, iar dacă procesarea se realizează cu succes programul de interfață emite cerea de nivel înalt specifică celei în limbaj natural și care va fi direcționată către SGBD.

Interfețe specializate aferente cererilor repetate = sunt destinate unei anumite grupuri de utilizatori. Deseori implementarea pentru a scurta timpul necesar introducerii comenzii sau utilizarea de chei funcționale sunt facilitate de un mic set de comenzi. Un limbaj de comandă este implementat de aceste interfețe.

• Interfețe pentru administratorii bazelor de date = folosesc aplicării comenzilor privilegiate ce sunt utilizate de administratorii bazelor de date. Crearea de conturi, setarea parametrilor sistemului, autorizarea intrării într-un anumit cont, reorganizarea structurii de stocare a datelor din baza de date și o serie de facilități referitoare la organizarea bazei de date înseamnă comenzi aplicate.

O gamă diversă de sisteme de gestiune a bazelor de date se regăsește astăzi pe piață pentru care există pe site-urile versiuni numite trial version.

Microsoft SQL Server = este sistemul de gestiune a bazelor de date relaționale multi-utilizator dezvoltat de firma Microsoft pentru sistemele de operare Windows. Există mai multe versiuni. Acest sistem de baze de date acceptă standardul SQL2 și dispune de o interfață grafică pentru interacțiunea cu utilizatorul și pentru folosirea tuturor posibilităților.

Microsoft Access = unul din cele mai cunoscute și utilizate sisteme de gestiune a bazelor de date relaționale pe platforme de calculatoare personale. Un sistem de control al bazei de date și o interfață grafică pentru interacțiunea cu utilizatorul este deținută de Microsoft Access. Datorită generatoarelor de aplicații, care permit proiectarea vizuală a bazelor de date și datorită formularelor pentru interfețele grafice și a rapoartelor, aplicațiile de baze de date în MS Access se pot dezvolta simplu.

Sistemul Oracle = sistem de gestiune al bazelor de date multi-utilizator important, cu aplicare pe toate platformele (Windows, Linux, Unix), care oferă atât performanțe de execuție înalte, cât și un grad mare de protecție și securitate a datelor. MySQL este un sistem de gestiune a bazelor de date relaționale cu implementări pentru sistemele de operare Linux, Unix, Windows. Sistemul este open source pentru că se poate utiliza gratuit și e compatibil cu standardul SQL2, însă unele prevederi ale standardului sunt implementate parțial.

Visual FOX PRO = limbaj de programare complet, care funcționează într-un mediu interactiv și compilat la rulare, este compatibil cu toate versiunile anterioare de FoxPro. Flexibilitatea și ușurința, forța și viteza brută caracterizează și sunt punctele forte stilului de proiectare a interfeței FoxPro și nici un alt produs nu a mai putut rivaliza cu acesta.

Cap.III. Proiectarea unei baze de date

3.1. Ce este proiectarea?

Proiectarea unei baze de date reprezintă de fapt manipularea acesteia cu scopul ca logic și fizic să corespundă nevoilor utilizatorilor unui grup de aplicații.

Există câteva etape pentru derularea proiectării corecte a bazei de date :

Analiza cererilor și strângerea de informații referitoare la aplicație;

Proiectarea conceptuală a bazei de date;

Alegerea unui sistem de gestiune al bazelor de date;

Proiectarea logică a bazei de date;

Proiectarea fizică a bazei de date;

Implementarea bazei de date și a aplicației.

Inițial trebuie cunoscute rezultatele așteptate de potențialii utilizatori și documentarea asupra datelor pentru înaintarea și realizarea proiectării bazei de date . Absolut necesară este definirea clară a aplicației, de pildă aplicație pentru salarizare, aplicație referitoare la gestiunea medicilor dintr-un spital, a notelor dintr-o școală etc.

Trecerea la elaborarea schemei conceptuale utilizând un model de nivel înalt se face deci după formularea precisă a cerințelor. Descrierea precisă a datelor utilizatorului incluzând descrierea nuanțată a tipurilor de date, a relațiilor și restricțiilor acestora reprezintă o schemă conceptuală. Pentru a evita unele conflicte, utilizatorii chiar și nespecializați ar trebui anunțați referitor la rezultate pentru că până în acest moment nu sunt incluse detalii de implementare.

Apoi urmează etapa construcției bazei de date pornind de la detaliile actuale și cu sprijinul unui sistem de gestiune, SGBD. Include de asemenea, fazele alegerii SGBD-ului, proiectării logice și fizice a bazei de date.

SGBD-ul este ales prin raportare la complexitatea funcției, capacitatea de stocare a datelor, posibilitatea refacerii datelor, numărul de utilizatori ai aplicației, cheltuieli de achiziție și de întreținere a sistemului.

Următoarea fază este cea de proiectare logică făcută în două etape:

transpunerea schemei conceptuale în modelul de date al sistemului SGBD ales și separat de sistemul de gestiune propriu zis;

dezvoltarea schemei conceptuale și a schemelor externe realizate anterior fără a mai fi nevoie de SGBD-ul ales.

Etapele pot fi realizate cu ajutorul instrumentelor de proiectare ale SGBD-ul ales.

În vederea obținerii unor performanțe pentru aplicația proiectată e nevoie ca proiectarea fizică a bazei de date să fie procesul de alegere a structurilor de memorare și de acces la fișierele bazei de date.

Timpul de răspuns, utilizarea spațiului de memorare și capacitatea tranzacțională sunt parametrii universali de alegere a ofertelor proiectului fizic a unei baze de date relaționale. În urma analizei aplicațiilor ce se vor executa, a interogărilor, a tranzacțiilor ce urmează a fi lansate se iau decizii de proiectare fizică.

Etapa finală este cea în care baza de date și aplicația se implementează efectiv. Acum sunt create obiectivele bazei de date, se populează cu date baza de date, constrângerile sunt verificate, interfețele cu utilizatorul și rapoartele necesare cu datele extrase din baza de date sunt create.

3.2. Modelul entitate-relație

Cel mai utilizat model conceptual de nivel înalt prin care se reprezintă schema conceptuală a bazei de date cu ajutorul entităților și a relațiilor dintre acestea este modelul entitate-relație, care a fost introdus de P.S. Chen în 1976. Conceptele de entitate și de relație sunt elementele esențiale utizate în cadrul modelului.

Entitate = obiect al lumii reale, care are o existență independentă și poate arăta un concept, un obiect fizic sau o activitate.

O persoană, un automobil, o companie, activitate sau un curs universitar sunt entități, adică obiecte cu existență fizică. Proprietățile entității sunt atributele care descriu entitatea respectivă. Entitatea mai este numită tabel al bazei de date, iar atributele sunt numite și câmpuri ale tabelului.

Tabelă = este o colecție de informații logice, relaționale tratată ca o unitate și se mai numește entitate.

Înregistrare = este rândul din care compune o tabelă, fiecare înregistrare fiind o simplă unitate legată de înregistrările altei tabele.

Câmpuri = sunt componente ale înregistrărilor, care se mai numesc atribute și care apar sub forma unor coloane.

Câmpul = particulă atomică a bazei de date, cea mai mică cantitate de informație care poate fi manipulată.

Într-o tabelă toate înregistrările au aceleași câmpuri, iar identificarea entității este scopul valorilor asociate atributelor.

Înregitrarea = atribuirea de valori pentru fiecare atribut a tabelului respectiv.

Atribut complex = atribut divizat în mai multe părți cu semnificație independentă. De pildă atributul vârstă are mai multe atribute: zi, lună, an.

Atribute atomice = atribute compuse cu valoarea formată prin concatenarea valorilor atributelor atomice.

Atribute cu o singură valoare = atribute cu valoare unică pentru o entitate particulară, un exemplu concludent ar fi numărul matricol al unui elev.

Atribute cu mai multe valori = ele pot lua mai multe valori, de exemplu : vârsta elevilor, înălțimea, greutatea acestora.

Atribute derivate = se pot determina din alte attribute, de exemplu : media anuală, se poate calcula din cele două medii semestriale.

Atributul nul = o entitate care poate să nu aibă valori pentru toate atributele asociate ei, de exemplu lipsa din atributul Adrese a numărului blocului sau a scării.

3.3. Construcția schemelor relație

Cu scopul reprezentării anumitor aspecte ale realității pe care le modelează baza de date sunt definite relații sau asocieri între mulțimile de entități componente atunci când se proiectează bazele de date.

Relație = corespondență între entitățile din una sau mai multe mulțimi de entități. Numărul de mulțimi de entități asociate dau gradul unei relații care poate fi binară, între două mulțimi de entități sau multiplă, între mai mult de două entități.

La rândul lor relațiile binare sunt împărțite în trei categorii, după numărul elementelor celor două mulțimi puse în corespondență de relația creată.

Fie următoarele entități E1 și E2 :

Relația „unul-la-unul” (1-1 sau one to one) = cel mai simplu tip de relație, unui element din E1 îi corespunde un singur element din E2 și reciproc.

Figura: Relația „unul-la-unul”

Relația aceasta este rar folosită în lumea reală și des utilizată pentru a reduce numărul de atribute dintr-o entitate. Ca să nu se depășească numărul maxim de câmpuri asociate unei tabele, aceste fiind de 255, această relație este folosită des, ca și în cazul când dorim despărțirea elementelor fixe, a informațiilor care se modifică mai rar față de cele care se modifică destul de des.

Relația „unul-la-multe” (1-N sau one to many) = este o relație prin care unui element din mulțimea E1 îi corespund unul sau mai multe elemente din mulțimea E2, dar unui element din mulțimea E2 îi corespunde un singur element din mulțimea E1. Obligatoriu trebuie specificate părțile acestui tip de relație.

Figura: Relația „unul-la-multe”

Relația „multe-la-multe” (M-N sau many to many) = este o relație prin care unui element din mulțimea E1 îi corespund unul sau mai multe elemente din mulțimea E2, și reciproc.

Figura: Relația „multe-la-multe”

Tipul acesta de relație este frecvent întâlnit fără a putea fi implementat însă în bazele de date relaționale. Ideea este că pentru proiectarea acestei relații e folosită o relație suplimentară, de tip unul la multe pentru fiecare din relațiile inițiale.

Relația unară = folosește doar o singură relație, aceasta fiind asociată cu ea însăși.

Figura: Relația unară

Exemplul clasic al acestei relații unare este cazul directorul unei școli private , care la rândul său este tot un angajat al acelei școli. Relațiile unare se modelează la fel ca și relațiile binare.

3.4. Diagrama entitate-relație

Diagrama entitate-relație = modelul entitate-relație reprezentat prin mulțimile de entități și relații dintre acestea.

Tipuri de notații pentru redarea acestei diagrame:

3.5. Constrângeri de integritate

Constrângerile de integritate = reguli care se definesc la proiectarea unei baze de date și care trebuie să fie respectate de-a lungul existenței acesteia.

Clasificare:

în cadrul tabelei

sau între tabele.

Constrângerile din cadrul unei tabele = reguli care se impun în cadrul unei singure tabele și asigură integritatea datelor acesteia. Avem trei tipuri:

• constrângeri de domeniu = sunt condiții care se impun valorilor atributelor și asigură integritatea domeniilor atributelor.

• constângeri de nuplu (de înregistrare din tabelă) = sunt condiții care se impun nuplurilor unei entități (înregistrărilor din tabelă) și asigură identificarea corectă a nuplurilor prin intermediul cheilor primare.

• constrângeri impuse de dependențe de date = sunt constrângeri prin care valorile unor atribute ale unei entități (câmpuri ale tabelei) determină valorile altor atribute ale aceleiași entități.

Între două sau mai multe relații constrângerile între tabele sunt reguli. Constrângerile de integritate referențială create prin intermediul cheilor străine și care asigură asocierea corectă a tabelelor sunt cele mai corecte constrângeri.

Constrângerile de domeniu = condiții impuse valorilor atributelor pentru ca acestea să corespundă semnificației pe care o au în realitatea modelată. Valorile atributelor sunt reprezentate pe două coloane când se realizează reprezentarea unei entități printr-un tabel, fapt pentru care au primit și denumirea de constrângeri de coloană și pot fi de trei feluri:

• Constrângerea NOT NULL = valoare particulară, care nu reprezintă valoarea zero, ci absență de informație. Valoarea NULL poate să apară în afara respectivelor informații . Valoarea NULL nu poate fi deținută de orice atribut,de pildă, numele angajaților dintr-un spital, pentru ca nu ar avea sens înregistrarea unui angajat al cărui nume nu se cunoaște.Valoarea NULL nu poate fi dată oricărui atribut în orice înregistrare din tabelă, în acest caz la definirea relațiilor impunându-se atributului constrângerea NOT NULL.

• Constrângerea DEFAULT= folosită pentru stabilirea unei valori implicite (DEFAULT) pentru un atribut al entității. Inserarea unui n-plu primește valoare implicită sau valoarea NULL dacă nu se specifică valoarea unui atribut. Se generează o eroare atunci când nu a fost definită o valoare implicită și nici nu sunt admise valori NULL.

• Constrângerea CHECK = constrângere de verificare. Tipurile de date predefinite sunt stabilite de domeniile în care pot lua valori atributele, putându-se adăuga constrângeri de verificare la definirea tabelului pentru fiecare atribut.

Cheia primară = o submulțime de atribute ale entității.

Mulțimea de n-upluri reprezintă în fapt o entitate, așadar n-upurile trebuie să fie diferite fapt ce determină că o entitate nu poate avea două sau mai multe n-upluri cu aceeași combinație de valori pentru fiecare atribut.

Proprietățile cheii primare dintr-un tabel sunt:

unicitate, adică orice combinație de valori ale atributelor acestei chei este unică pentru orice stare a relației

stabilitate, adică informația corespunzătoare ei nu se modifică niciodată prin operații de actualizare a datelor

inflexibilitate, nu se admit valori NULL pentru nici unul din atributele cheii respective

Astfel, o cheie primară identifică în mod unic fiecare înregistrare a tabelului. Relațiile dintre tipurile de entități definite în modelul conceptual al unei baze de date se realizează în modelul relațional prin intermediul cheilor străine.

O cheie străină = o submulțime de atribute ale unei entități E1 care referă entitatea E2 și îndeplinește următoarele condiții: atributele cheii străine din E1 sunt definite pe domenii compatibile cu cele ale atributelor cheii din entitatea E2, și cheia din entitatea E2 este cheie primară în această relație.

Asocierea între câmpurile unor tabele și crearea abilității de realizare a unirii tabelelor respective prin intermediul operațiilor JOIN sunt determinate de cheia străină.

Integritatea referențială = proprietatea bazei de date care garantează că oricare valoare a unei chei străine se regăsește printre valorile cheii corespunzătoare din relația referită, sau cheia străină are valoarea NULL (dacă atributele acesteia nu sunt supuse constrângerii NOT NULL).

Dependența funcțională = relația dintre un atribut sau un grup de atribute ale unui tabel și un alt atribut sau grup de atribute ale altuia Dependențele funcționale dintr-o tabelă sunt:

Dependențe funcționale determinate de cheile tabelei – nu produc redundanța datelor și nici anomalii de actualizare a relației

Dependențe funcționale în care atributul determinat nu este o cheie a tabelei – produc redundanța datelor și anomalii de actualizare a tabelei.

Sistemul de gestiune verifică și impune automat constrângerile de cheie, iar proiectantul bazei de date pentru a sesiza că aceste constrângeri sunt satisfăcute de orice stare a relației, nu trebuie să prevadă nimic.

Triggerele sunt proceduri stocate sau funcții impuse în programele de aplicație prin care se poate face procedural verificarea și impunerea acestor dependențe funcționale.

3.6. Normalizare. Forme normale.

Entitățile din realitatea modelată se stabilesc atunci când se proiectează bazele de date relaționale. Integritatea datelor este asigurată de necesitatea existenței unor criterii de evaluare a calității entităților, fapt pentru care modul în care este stabilită entitatea unei baze de date nu e unică.

Procesul normalizării și cele trei forme normale pentru o tabelă sunt dezvoltate în acest capitol. Execuția referitoare la niște tabele a unor serii de texte cu scopul cercetării apartenenței la forma normală este urmărită în procesul de normalizare propus de E.F.Codd în anul 1970. Trei forme normale sunt propuse de Codd, însă forma normală Boyce/Codd este cea mai bună definiție dată împreună de Boyce și Codd.

Normalizarea datelor = proces prin care schemele tabelă nesatisfăcătoare sunt descompuse prin împărțirea atributelor în tabele cu atribute mai puține, care au proprietățile dorite. Asigurarea faptului că tabela posedă o bună construcție pentru a asigura posibilități de modificare cu îndepărtarea anomaliilor care pot apărea este unul din obiectivele procesului de normalizare.

Facilități oferite de forma normală proiectantului bazei de date :

un schelet formal pentru analiza relațiilor bazat pe chei și pe dependența funcțională între atribute

serie de teste ce pot elimina tabelele individuale astfel încât baza de date relațională poate fi normalizată în orice grad.

Forma normală de ordin 1 = considerată ca fiind parte a definiției formale a unei tabele. Această formă nu admite diverse atribute ci stabilește că domeniul atributelor să includă valori atomice și că valoarea oricărui atribut într-un n-uplu reprezintă o valoare unică în domeniul atributului respectiv. Astfel ca valoare a unui atribut pentru un n-uplu FN1 nu permite un set de valori, un n-uplu de valori sau combinația acestora ca valoare a unui atribut, mai exact nu permite tabele în tabele sau tabele ca atribute ale n-uplurilor. Pentru un domeniu specificat de valori avem două tipuri de valori permise de FN1, atomice sau indivizibile.

Forma normală de ordin 2 (FN2) = impune ca fiecare atribut (coloană) să fie dependent de fiecare parte a cheii principale. E obligatoriu ca o tabelă care îndeplinește FN2 să fi îndeplinit FN1 și are doar atribute ce dau informații despre cheia tabelei.

Forma normală de ordin 3 (FN3) = a treia formă normală, pentru care tabelul trebuie să fie deja în prima și a doua formă normală. Câmpurile non-primare obligatoriu trebuie să depindă de câmpurile primare ca să ajungă în a treia formă normală. Nu trebuie incluse câmpuri care pot fi derivate din alte câmpuri situate în acelașii tabel sau în tabele aflate în relație, fapt ce nu face parte în mod riguros din normalizare.

Forma normală Boyce-Codd (FNBC) = formă strictă FN3, înțelegând prin aceasta că fiecare tabelă FNBC este în același timp o tabelă FN3, cu toate că o tabelă FN3 nu este în mod necesar și o tabelă FNBC. Formele sunt identice și impun atributul care determină funcțional alte atribute să fie o cheie a tabelei. Deoarece în FNBC se impune această condiție pentru toate atributele FNBC este mai restrictivă decât FN3, pe când în FN3 condiția se impune numai atributelor neprime.

Atribute prime = atribute care aparțin unei chei.

Atribute neprime = atribute care nu aparțin unei chei.

FNBC, FN2, FN3 = orice tabelă formată din două atribute.

FN2 = tabelă compusă din două atribute întrucât ori cheia este formată din ambele atribute și nu există atribute neprime, ori cheia este formată din unul din atribute și celălalt atribut este total dependent funcțional față de cheie.

FN3 = tabelă compusă din două atribute care este FN2 și nu poate exista nici un atribut neprim care să determine funcțional un alt atribut neprim, având în vedere regula că o tabelă cu două atribute nu poate avea decât cel mult un atribut neprim.

3.7. Structuri de indecși în tabelele de date

Index = reprezintă o cale rapidă de localizare a înregistrărilor dintr-o tabelă, prin gruparea tuturor înregistrărilor pentru un anumit atribut sau grup de atribute.

Principalele scopuri ale indexării sunt:

– accelerarea căutărilor în baza de date

– asigurarea unicității înregistrărilor

Relație = colecție de date fără elemente duplicat. Timpul de căutare a unui element se înmulțește raportat la numărul de elemente ale mulțimii când e vorba de mulțimi reprezentate printr-o colecție neordonată de elemente pentru că cel mai grav ar fi parcurgerea tuturor elementelor mulțimii pentru a găsi elementul dorit.

Elementele mulțimii sunt ordonate și atunci timpul de căutare poate fi micșorat substanțial, de pildă putem să facem referire la un dicționar în care avem explicați termeni alfabetic. Fără un dicționar la îndemână ar fi dificil de explorat complet o carte.

Dacă înregistrările sunt reprezentate printr-o colecție ordonată operațiile de căutare, inserare și ștergere a elementelor într-o tabelă se execută rapid. Indexarea reprezintă deci ordonarea colecțiilor de date in tehnologia bazelor de date.

Prin indexul unei tabele înțelegem structură de date adițională memorată în baze de date care permite accesul rapid la înregistrările tabelei prin ordonarea acestora. indexul poate fi perceput drept o tabelă cu două atribute:

Întâiul atribut are valorile atributelor tabelei bazei de date pentru care se creează indexul;

Al doilea atribut deține un pointer la locația n-uplurilor corespunzătoare.

Figura:O structură generică de index

Apar aranjate valorile descendent sau ascendent cheii de indexare.

Clasificarea indecșilor poate să fie:

Indexul primar = un index asociat unei tabele ordonate după câmpul cheie al tabelei, iar în structura de index se utilizează câmpul cheie.

Indexul secundar = un index construit tot pe baza unui câmp cheie, dar tabela nu este ordonată după câmpul cheie.

Indexul de grup (cluster) = un index construit după câmpuri ce nu sunt câmpuri cheie (criteriu de acces este diferit de câmpul cheie), iar tabela poate fi ordonată sau nu relativ la criteriul de acces.

Indexul multinivel (se mai numesc și indecși de blocuri) = este indexul care se aplică oricăror tabele. Principiul de bază este de a construi niveluri de indexare până când structura adițională de date corespunde indexului de cel mai mare nivel poate fi memorată într-un singur bloc. Acești indecși se construiesc în două forme: bazați pe arbori B și bazați pe arbori B+.

Figura: Indexul primar

Figura: Indexul secundar

Figura: Indexul de grup

Metodele de indexare descrise până acum operează cu un fișier index ordonat. Asupra fișierului index se aplică metode de căutare binară pentru localizarea înregistrărilor cu valoarea specificată în câmpul index.

Pentru un index multinivel, fișierul index este văzut ca un nou fișier la care se construiește un nou index și așa mai departe. Primul fișier index conține câte o valoare distinctă pentru fiecare cheie de indexare. Se poate crea un index primar pentru primul nivel, nivel numit și nivel secund al indexului multinivel. Cum al doilea nivel este un index primar se poate folosi metoda de ancorare a blocurilor, așa că al doilea nivel are câte o intrare pentru fiecare bloc al primului nivel, întrucât este în esență un index primar.

Figura: Indexul cu două niveluri

Cap.IV. Organizarea unei baze de date Access 2007

O bază de date în Microsoft Access 2007 = este un fișier cu extensia .accdb (Access DataBase) care conține datele din bază, descrierea lor, și obiecte pentru manipularea acestora.

Componentele unui fișier bază de date :

Tabele = conțin, de fapt, informațiile din baza de date;

Interogări = conțin condiții impuse unor linii din tabele pentru a fi incluse în rezultat;

Formulare = conțin obiecte de control care permit introducerea și modificarea datelor din tabelele din baza de date;

Rapoarte = sunt obiecte ale bazei de date care permit obținerea unei liste, mai mult sau mai puțin complexe, care conțin liniile și coloanele din tabelele bazei de date;

Macro-uri și module Visual Basic.

4.1. Tabele

Un tabel dintr-o bază de date Microsoft Access 2007 este organizat pe rânduri și coloane . Altfel spus tabelele, prin analogie cu programul Microsoft Excel pot fi socotite foi de calcul, iar baza de date, întregul registru. Structura tabelului reprezintă câmpurile și tipurile de date stabilite pentru ele.

Trebuie de la început clarificat pentru Microsoft Access 2007 tipurile de valori ce vor fi introduse în fiecare coloană, urmând ca acesta să interzică apoi introducerea valorilor de alt tip decât cel stabilit, comparativ cu tabelele Word sau Excel unde se pot introduce orice valori în orice celulă. Un exemplu concludent ar fi o coloană dintr-un tabel Word sau Excel unde în partea de sus poate fi introdus un număr de înregistrare, iar în partea de jos un text explicativ pentru numărul acela. În Access însă odată introdus în câmp un număr în nici una din celulele din coloană nu vor mai putea conține texte. Tip de dată este conceptul pentru această comportare.

Tipuri de date pentru Microsoft Access 2007:

Crearea tabelului = descrierea structurii tabelului, adică specificarea următoarelor elemente pentru fiecare câmp:

nume;

tipul de dată;

lungime.

Pașii de creare a unui tabel este:

Pasul 1 – Deschidem fereastra bazei de date în care vom crea tabelul.

Pasul 2 – Meniul Creare fila Tabele butonul Tabel.

Pasul 3 – Dăm clic dublu pe varianta Creare tabel în modul Vizualizare proiect (Create table in Design view). Access 2007 va deschide fereastra pentru descrierea structurii noului tabel.

În această fereastră, vom specifica pentru fiecare câmp următoarele proprietăți:

în coloana Nume câmp (Field name) vom introduce numele fiecărui câmp; acesta este folosit la identificarea ulterioară a câmpului, poate avea maxim 64 de caractere și poate conține și spații;

la Tip de date (Data type) vom alege tipul de date pentru câmpul respectiv.

Caracteristicile opționale pentru câmpul curent pot fi specificate în partea inferioară a ferestrei, în zona Proprietăți câmpuri (Field Properties):

Dimensiune câmp (Field Size) = numărul maxim de poziții ce pot fi memorate în acel câmp (pentru valorile posibile pentru fiecare tip de dată, v. tabelul cu tipurile de date de mai sus);

Format = formatul de afișare ulterioară a datelor. În acest moment se deschide fereastra cu proprietățile pentru fiecare câmp:

Zecimale (Decimal Places) = numărul de poziții din partea zecimală (pentru câmpurile numerice);

Mască intrare (Input Mask) = o machetă prin care putem impune un anumit format de introducere a datelor în câmp; în acest caz, pentru fiecare caracter (poziție) din câmp, la introducere, putem specifica unul dintre caracterele următoare:

De exemplu, dacă pentru câmpul Nume folosim masca >L<????????????, atunci prima literă din nume va fi convertită la literă mare, următoarele la litere mici și nu se vor permite mai mult de 13 caractere în acest câmp; un alt exemplu: pentru câmpul CNP, de tip Text pe lungime de 13, masca 9999999999999 va permite doar introducerea de cifre în pozițiile respective; alt exemplu: pentru câmpul Buletin, masca >LL999999 va permite doar litere pe primele două poziții și cifre pe următoarele șase;

Legendă (Caption) = permite specificarea unui nume atribuit câmpului când acesta este folosit într-un raport sau un formular;

Valoare implicită (Default Value) = valoarea care se atribuie, automat, câmpului, când utilizatorul nu introduce nici o valoare pentru acel câmp;

Regulă de validare (Validation Rule) = un criteriu care trebuie îndeplinit de valoarea câmpului pentru a putea fi acceptată (v. mai jos);

Text de validare (Validation Text) = textul care se va afișa în bara de mesaje când valoarea introdusă în câmp nu se respectă criteriul specificat la Regula de validare;

Obligatoriu (Required) = dacă este activată, utilizatorul nu va putea trece de acel câmp fără să-l completeze;

Se permite lungimea zero (Allow Zero Length) = se permit sau nu valori vide în câmpurile text sau memo;

Indexat (Indexed) = se creează sau nu un index pentru acel câmp La închiderea ferestrei, suntem întrebați dacă dorim să salvăm noul tabel și, dacă folosim Yes, se va afișa un dialog în care trebuie să introducem numele noului tabel.

Se poate utiliza regula de prin care se interzice introducerea de valori eronate într-un câmp.

Evaluarea unei expresii logice impuse valorii introduse de utilizator în câmp este o Regulă de validare = evaluarea unei expresii logice impuse valorii introduse de utilizator în câmp.

Access ne pune la dispoziție următorii operatori relaționali: =, >, <, <= (mai mic sau egal), >= (mai mare sau egal), <> (diferit).

Exemplu: dacă dorim ca bugetul persoanelor din tabel să fie mai mare de 300 lei, condiția impusă asupra câmpului Buget va fi >300.

FormatFreeze Columns = dacă se vrea ca un câmp să nu dispară când se defilează stânga-dreapta în tabel.Acest câmp poate fi introdus în prima poziție din fereastră și va rămâne acolo fixat să fie vizibil pentru ca celelalte câmpuri să se deplaseze spre stânga sau dreapta pe sub el. Mai multe câmpuri pot fi blocate.

FormatUnfreeze All Columns = deblocare. Diferența este că respectiva coloană nu va fi situată în vechiul loc din fereastră.

FormatHide Columns = ascunderea unui câmp după ce vom selecta coloana corespunzătoare. Acea coloană o să dispară din fereastră, iar dacă câmpurile sunt vecine pot fi și mai multe ascunse.

FormatUnhide Column, = reafișarea câmpurilor ascunse , afișând un dialog în care vom activa comutatorii corespunzători coloanelor pe care dorim să le vedem din nou.

FormatFoaie de date (FormatDatasheet) = modificarea aspectului unui tabel Următoarele aspecte vor fi specificate în dialog:

Efect celulă (Cell effect) = stabilim efectele vizuale pentru celule;

Orizontale (Horizontal) sau Verticale (Vertical) = trebuie să fie dezactivate pentru ca liniile de grilă respective să nu se afișeze;

Culoare linii de grilă (Gridline color) = culoarea liniilor de grilă;

Culoare fundal (Background color) = culoarea de umplere;

Stiluri linie și chenar = sunt folosite să selectăm tipul de linie pentru fiecare latură în parte;

Direcție (Direction) = putem impune ordinea în care vor fi preluate câmpurile din structura tabelului ;

Eșantion (Sample) = pentru a previzualiza aspectul celulelor din fereastră ;

Pentru întregul tabel se pot stabili parametrii privind liniile de grilă.

Modificarea parametrilor de font pentru câmpurile din fereastră = se realizează prin plasarea cursorului la FormatFont, după care se aleg parametrii doriți. Acest dialog este asemănător cu cel de la Word și Excel însă cu mai puține opțiuni.

ViewToolbarsFormatting (Datasheet)=cu acestea se activează bara de formatare.

Setarea parametrilor de font se poate stabili doar pentru întregul tabel.

Sortarea înregistrărilor din tabel = plasarea cursorului în câmpul respectiv și folosirea următoarelor butoane:

Sort Ascending respectiv Sortare descendentă , după cum dorim ca sortarea să fie crescătoare sau descrescătoare;

RecordsSortSort Ascending respectiv Sortare descendentă.

Sort Ascending respectiv Sortare descendentă din meniul contextual al câmpurilor selectate.

Nota bene!

! Dacă dorim sortarea după mai multe criterii, vom muta câmpurile-criterii astfel încât să fie vecine în fereastră, în ordinea importanței lor ca și criterii le vom selecta și vom folosi aceleași butoane, în funcție de ordinea dorită.

! Nu putem impune pentru fiecare din câmpurile selectate o anumită ordine (de exemplu, pentru primul o selectare crescătoare și pentru al doilea una descrescătoare).

! Aceeași metodă se poate aplica și dacă e vorba de o fereastră cu rezultatele unei interogări.

RecordsRemove Filter/Sort = se folosește pentru revenirea la ordinea inițială, înainte de a închide fereastra.

Vom fi întrebați dacă ordinea în care sunt afișate înregistrările este cea dorită și pe viitor, atunci când închidem fereastra. Dacă răspunsul este Da Access-ul 2007 va face schimbarea așa încât și la deschiderea ulterioară să avem această ordine.

O anumită valoare poate să fie căutată ori într-un anumit câmp dintr-un tabel ori în tot tabelîn câmpul dorit și folosim EditFind sau butonul Find din bara de instrumente Baza de date sau Ctrl+F. Urmează un dialog cu următoarele elemente:

De căutat (Find What) = valoarea pe care o căutăm;

Privire în (Look in) = putem alege Tabel (Table) pentru a efectua căutarea în întregul tabel (în caz contrar, căutarea se va efectua numai în câmpul în care se afla cursorul la începerea căutării);

Potrivire se poate stabili modul de căutare, selectând una din următoarele opțiuni:

Orice parte din câmp (Any Part of the Field)

Câmpul întreg (Whole Field)

Început de câmp (Field Start)

La Căutare (Search) se stabilește direcția de căutare în raport cu poziția indicatorului de înregistrări: În sus (Up), În jos (Down), Toate (All).

dacă activăm Potrivire litere mari și mici (Match Case), Microsoft Access 2007 va ține cont, la căutare, de diferența între litere mari și litere mici;

Pornirea operațiunii de căutare se face cu butonul Următorul (Find Next) utilizat și pentru continuarea căutării.

Nota bene!

!Nu se pot face căutări pentru câmpuri de tip DA/NU.

Programul Microsoft Access permite afișarea doar a anumitor câmpuri, astfel putem stabili un filtru prin care se for afișa înregistrările care îndeplinesc o anumită condiție (de exemplu, dorim ca în tabelul afișat să apară numai înregistrările pentru care valoarea este 2).

Tipuri de filtre:

Filtre care afișează numai înregistrările care, în câmpul curent, au valoarea respectivă = se creează după plasarea cursorului într-un articol cu valoarea respectivă, în acel câmp, folosind RecordsFilter by Selection sau butonul Filter By Selection din bara de instrumente Baza de Date. În fereastră vom vedea numai înregistrările pentru care e îndeplinită condiția.

Filtre care afișează numai înregistrările care în câmpul curent, au alte valori decât cea curentă = se creează după plasarea cursorului într-un articol cu valoarea respectivă, în acel câmp, folosind RecordsFilter Excluding Selection. În fereastră vom vedea numai înregistrările pentru care nu e îndeplinită condiția.

RecordsRemove Filter/Sorts = revenirea la afișarea tuturor înregistrărilor butonul Eliminare filtru (Remove Filter) = revenire la afișarea tuturor înregitrărilor din aceeași bară de instrumente.

Exemplu: Să se creeze un filtru pe câmpul Vârstă, apoi un filtru care să afișeze numai pe cei din localitatea Nucet.

4.2. Interogări

Interogare = obiect al bazei de date care ne permite extragerea din unul sau mai multe tabele a înregistrărilor care satisfac anumite criterii. După crearea interogării, ea poate fi executată ori de câte ori este nevoie, obținând ca rezultat doar câmpurile dorite și/sau înregistrările care satisfac o anumită condiție.

Pași pentru crearea unei interogări:

În fereastra bazei de date folosim butonul Interogări (Queries), apoi:

dăm clic dublu pe varianta Creare interogare în modul vizualizare proiect (Create query in Design view);

folosim butonul Nou Vizualizare proiect OK (NewDesign viewOK).

În dialogul afișat selectăm, pe rând, fiecare tabel ce va participa la interogare și folosim, pentru fiecare, butonul Adăugare (Add), după care închidem dialogul.

În acest moment se va afișa fereastra generatorului de interogări, împărțită în două subferestre:

de sus = conține subferestre pentru tabelele selectate, cu relațiile deja stabilite;

de jos = permite specificarea celorlalte elemente ale interogării (câmpuri, criterii etc.).

Dacă se dorește ca în rezultatul interogării înregistrările să fie ordonate după unul sau mai multe criterii, vom folosi lista ascunsă Sortare (Sort) pentru câmpul care constituie criteriu de sortare, din care vom alege ordinea în care se face sortarea (Ascendentă – Ascending, Descendentă – Descending, nesortat – unsorted).

Se pot alege drept criteriu de sortare mai multe câmpuri, dar trebuie să avem în vedere că:

Ordinea alegerii acestor criterii este importantă, în sensul că al doilea criteriu va avea efect numai dacă pentru primul există valori duplicat.

Câmpul setat drept criteriu principal de sortare trebuie să fie în stânga câmpului criteriu secundar (nu neapărat vecine).

Exemplu: Să se ordoneze rezultatele interogării descrescător după An_Studiu și crescător după Disciplină.

Ascunderea/reafișarea unor câmpuri din rezultat = dezactivarea comutatoarelor corespunzătoare câmpurilor respective din linia Afișare (Show).

Dacă dorim reafișarea se poate face prin activarea comutatoarelor.

Specificarea înregistrărilor care vor apărea în rezultatul interogării =afișarea în rezultat numai a articolelor care satisfac anumite condiții.

În mod normal, în rezultatul interogării apar toate articolele din tabelele selectate inițial. Putem impune prezentarea în rezultat numai a articolelor dorite.

Pentru realizare, în linia Criterii (Criteria) de sub câmpul respectiv vom nominaliza o condiție de selectare a înregistrărilor. Atunci vor apărea numai înregistrările care satisfac condiția dorită. Condiția constă, în general, în compararea a două valori: cea din câmp și valoarea pe care o specificăm.

Nota bene!

!Constantele de tip text trebuie introduse între ghilimele, iar cele de tip dată calendaristică între caractere diez (#).

Pentru comparare se pot folosi următorii operatori: =, <, >, <=, >=, <>(diferit).

Există două posibilități pentru a plasa un criteriu de selectare:

tastarea criteriului în linia Criterii (Criteria) din fereastra de proiectare a interogării.

plasând cursorul sub câmp, în linia Criterii din fereastra de proiectare a interogării și folosind butonul Build din bara de instrumente. Se va afișa dialogul Generatorului de expresii, în care vom putea construi condiția dorită.

Componentele dialogului:

o zonă în care vom construi condiția, în partea superioară;

un set de butoane din care putem alege operatorii care apar în condiție;

o listă cu tabelele din care putem prelua câmpuri și cu operatorii posibili;

o listă cu câmpurile din tabelul selectat în prima listă;

o listă cu formatul de afișare.

4.3. Formulare

Formularele = interfața principală între utilizator și o bază de date Access 2007; ele sunt obiecte componente ale bazei de date care permit introducerea și modificarea datelor într-o manieră mai atractivă decât modul de afișare Datasheet View, discutat mai sus.

Pași în realizarea unui formular:

Se utilizează butonul Formulare (Forms) a ferestrei Baza de Date, după care apelăm la una din următoarele variantele:

Creare formular utilizând expertul (Create by using wizard);

NouExpert FormularOK (NewForm WizardOK).

Un set de dialoguri pentru precizarea conținutului și aspectului noului formular va fi început în ambele cazuri.

Tabele/Interogări (Tables/Queries) = selectăm tabelul din care fac parte câmpurile și apoi, din lista Câmpuri disponibile (Available fields) selectăm câmpurile dorite. Ele se vor muta în lista Câmpuri selectate (Selected fields). Se trece la pasul următor Next.

Nota bene!

!Ordinea în care selectăm câmpurile este ordinea în care vor fi ele afișate în formular.

Vom fi întrebați care tabel conducător în viitorul formular să rămână, dacă am ales câmpuri din mai multe tabele. La dialogul următor se trece cu Next.

Butoanele radio alăturate sunt cele prin care ni se cere să alegem modul de așezare a câmpurilor în formular, cel mai utilizat fiind modul columnar ,iar Next face trecerea la dialogul următor.

Apoi se alege pentru formular un stil de afișare dintre care cel mai recomandat este varianta Standard. Se trece cu Next mai departe.

Vom specifica numele formularului și dacă dorim să-l deschidem pentru editarea datelor în dialogul final, vom confirma cu Finish, prin care se deschide formularul pentru introducerea datelor datelor ce vor deschide generatorul de formulare pentru modificarea acestuia.

Butonului din bara afișată sau InsertNew Record = conduc la adăugarea unui articol făcută prin completarea valorilor din câmpuri.

Butonul Delete Record din bara de instrumente sau EditDelete Record = ștergerea unui articol se face după deplasarea la el folosind aceste butoane.

Programul va întreba pentru ștergere.

Pași în introducerea în subsolul unui formular a unui text:

Formulare (Forms) din fereastra bazei de date și Proiect (Design) din bara de instrumente = sunt selectate iar programul ne permite modificările dorite prin deschiderea ferestrei constructorului de formulare, după care se afișează Toolbox.

Înățimea antetului trebuie modificată pentru a putea introduce un text în antet pentru ca atunci când cursorul are forma unei linii orizontale cu două săgeți verticale să trasăm bara separatoare aflată între linia Antet Formular / Form Header și linia de Detaliere/ Detail.

Butonul Label () este selectat din Toolbox.

Un dreptunghi în care redactăm textul antetului este trasat cu mouse-ul.

După ce am introdus textul se confirmă cu un clic.

Bara Subsol Formular/ Form Footer folosește atunci când dorim și un subsol.

Pași pentru a introduce într-un formular o imagine:

Butonul Image din Toolbars este selectat.

Zona selectată pentru imagine este trasată cu mouse-ul.

Apare dialogul pentru a selecta fișierul imagine dorit pentru inserare . Programul introduce în dreptunghi numai o parte din imagine sau imaginea întreagă, insă rămâne o parte liberă lângă ea. Se dă clic dreapta pe imagine, dacă dorim întreaga imagine, după care apare un dialog în care putem alege din Mod Afișare :

Zoom = va afișa întreaga imagine, pe cea mai mare dimensiune posibilă în dreptunghiul descris;

Lărgit = va umple cu imaginea întregul dreptunghi, chiar dacă o va deforma.

De remarcat că formularul de mai sus nu mereu reprezintă ceea ce dorim. Cu butonul Formulare/Forms poate fi selectat formularul de modificat, după care tastăm butonul Proiect/Design, apoi se pot opera modificări variate.

Cu ajutorul tehnicii anterioare vom putea accesa toate înregistrările din tabelele selectate prin intermediul formularului. Trebuie urmați doi pași esențiali atunci când dorim să accesăm doar anumite înregistrări:

Pasul 1 = Crearea unei interogări prin care să impunem condițiile de selectare respective a înregistrărilor, eventual câmpurile dorite și ordinea de selectare a înregistrărilor.

Pasul 2 = Crearea formularului. Se procedează ca mai sus, singura diferență fiind că la pasul 1 nu se aleg tabelele din care provin înregistrările, ci interogarea respectivă.

4.4. Rapoarte

Raport = obiectul bazei de date Access care dă posibilitatea afișării datelor din unul sau mai multe tabele. Scopul principal al rapoartelor este extragerea datelor din mai multe tabele în scopul listării.

Pentru crearea unui raport utilizăm butonul Rapoarte /Reports în fereastra bazei de date care are ca efect afișarea unei liste cu rapoartele deja create a bazei de date.

Microsoft Access pune la dispoziție două posibilități pentru crearea unui raport:

Creare raport utilizând Expertul / Create report by using wizard;

butonul Nou / New care are ca efect deschiderea fereastrei Raport Nou în care tastăm Expert Raport /Report wizard.

Urmează un set de dialoguri/ Wizard în ambele cazuri pentru a preciza conținutul și forma noului raport.

Din Tabele/Interogări/Tables/Queries alegem acel tabel cu câmpurile dorite, iar din Câmpuri Disponibile/Available Fields apoi pot fi selectate câmpuri legate prin relație în baza de date din mai multe tabele. Butoanele <,<<,>,>>, sau un dublu clic pe lista respectivă face transferul câmpurilor între cele două liste. Cu Next se face trecerea la următorul pas.

Nota bene!

!Ordinea în care vor apărea câmpurile în raport este aceeași cu ordinea în care ele sunt selectate.

Dialoguri ce vor fi afișate:

Dacă în dialogul anterior am ales două sau mai multe tabele, doar atunci se afișează dialogul următor și putem stabili care e tabelul conducător. Acesta este important dacă dorim articolele grupate într-un anume fel în raport, selectăm Next.

Dacă dorim să fie criterii de grupare alegem în următorul dialog câmpurile dorite, apoi în raport vor fi inserate în ordine în care sunt găsite în tabele înregistrările, ele însă pot fi grupate după un câmp, un grup constând în toate înregistrările cu aceeași valoare pentru câmpul criteriu. Dacă avem în vedere că ordinea specificării acestor criterii este importantă putem impune mai multe criterii de grupare, adică pentru primul criteriu se vor crea grupuri principale, apoi subgrupuri pentru al doilea criteriu etc.

Câte o bandă antet de grup și o bandă subsol de grup se va crea în raport pentru fiecare criteriu, în acestea putând plasa valori statistice.

Cu dublu clic pe numele câmpului în lista din stânga sau cu butonul > se realizează selectarea unui criteriu; butonul < face deselectarea, după care selectăm Next.

Avem patru criterii după care dorim sortarea articolelor în cdrul unui grup ce pot fi stabilite în acest dialog. Din listele ascunse 1…4, în acest scop alegem câmpul dorit ca și criteriu de sortare, apoi în fiecare caz se hotărăște ordinea sortării cu butonul Ascending/Descending, care face parte din fiecare listă.

Butonul Summary Options ne ajută să selectăm în cazul fiecărui câmp numeric, bifat anterior, calcularea unei sume/Sum, medii/Avg, valori minime/Min, valori maxime/Max.

Cu ajutorul butoanelor radio Detail and Summary stabilim unde vor apărea fiecare din aceste valori statistice, afișate atât în banda de detalii cât și în banda de rezumat din raport. Summary Only se regăsește doar în banda de rezumat. Cu Next se face pasul următor.

Aspectul raportului poate fi selectat în acest dialog cu Layout, orientarea hârtiei pentru listarea raportului cu Orientation și dacă avem activat Adjust the field width so all fields fit on a page o posibilă tăiere a valorilor câmpurilor pentru a intra toate pe lățimea hârtiei. Cu Next se trece mai departe. Apoi se alege stilul de listare al raportului după care selectăm Next.

Ultimul pas înseamnă stabilirea titlului pentru raport și impunerea, dacă dorim, trecerii la previzualizarea raportului cu butonul Examinare Raport/Preview the Report sau modificarea raportului Modificare Proiect Formular/Modify the report’s Design. Finalizarea se face cu Finish.

Pași în introducerea în subsolul unui raport a unui text:

Pasul 1 = cu Reports/ (Rapoarte) și cu Proiect/ (Design) programul va deschide fereastra Constructorului de rapoarte, pentru a realiza schimbările dorite, pe deasupra afișându-se și Toolbox.

Pasul 2 = butonul Label () va fi selectat.

Pasul 3 = un dreptunghi pentru a redacta textul antetului va fi trasat cu mouse-ul.

Pasul 4 = redactăm textul și dăm clic.

Pentru subsol se urmează aceeași pasi.

Pași de urmat pentru inserarea unei imagini într-un raport:

Pasul 1. butonul Image este selectat.

Pasul 2. trasarea zonei pentru imagine .

Pasul 3. Din dialogul afișat se alege imaginea dorită.

Programul introduce în dreptunghiul trasat ori o parte din imagine, ori imaginea completă cu o parte liberă lângă ea. Apare dialogul unde la Mod Afișare selectăm:

Zoom –va afișa întreaga imagine, pe cea mai mare dimensiune posibilă în dreptunghiul descris;

Lărgit –va umple cu imaginea întregul dreptunghi, chiar dacă o va deforma.

În fereastra Constructorului de rapoarte putem grupa înregistrările după unul sau mai multe câmpuri, dacă nu s-a făcut în faza creării raportului, urmând următorii pași:

Bifăm ViewSorting and Grouping sau butonul din Formatting/ Form/Report.

Din dialog alegem Câmp/Expresie/Field/Expression, apoi câmpuri și ordinea pentru ordonarea fiecăruia cu ajutorul Ordinea de sortare/Sort order.

Cu Proprietăți grupuri/Group Properties hotărâm opțiunile privitoare la modul de grupare a datelor.

Cap. V. Metode generale de predare și învățare a informaticii

Sarcinile didactice se realizează cu ajutorul tehnicilor, metodelor si procedeelor didactice. Subdomeniile informaticii nu pot fi predate apelând la o singură metodă. În cele ce urmează se vor prezenta metode specifice de abordări; a predării diferitelor domenii din informatică; metodele clasice de predare (prin expunere, descoperire dirijată etc.) urmând să fie prezentate ulterior. Bineînțeles, metodele didactice se vor combina, de asemenea se vor dezvolta pe baza experienței fiecărui profesor. Dar există câteva elemente care neapărat trebuie luate în considerare în momentul în care se alege o metodă sau o combinație a mai multora:

1 – domeniul propriu-zis al disciplinei; conținutul științific;

2 – categoria de vârstă;

3 – obiectivele generale și specifice;

4 – nivelul clasei;

5 – personalitatea clasei;

6 – personalitatea profesorului;

7 – convingerile profesorului.

Metodele care vor fi prezentate se vor analiza cu avantajele și dezavantajele lor. Se recomandă să nu se fixeze nicicând pentru totdeauna o anumită metodă aleasă la un moment dat pentru predarea unei anumite părți din materie. S-ar plictisi profesorii, s-ar plictisi elevii, iar rezultatul nu va fi cel scontat.

Metode generale de învățare

Vom analiza metodele generale utilizate în predarea informaticii.

1. Expunerea sistematică a cunoștințelor.

2. Conversația

3. Problematizarea

4. Modelarea

5. Demonstrarea folosind materialul intuitiv

6. Exercițiul

7. Învățarea pe grupe mici

8. Munca cu manualul

9. Jocurile didactice

10. Instruirea programată

În tratarea acestor metode se vor urmări cu predilecție particularitățile specifice predării disciplinelor de informatică și, în special, aplicațiile practice de laborator și contribuția informaticii la realizarea obiectivelor didactice ale altor discipline din învățământul preuniversitar.

5.1.1.Expunerea sistematică a cunoștințelor

Dintre formele pe care le îmbracă expunerea sistematică a cunoștințelor (povestirea, prelegerea, descrierea, explicația, conversația etc.), opinăm că informatica utilizează cu precădere explicația. Elementele explicative domină procesul de instruire informatică, acestea fiind caracteristice atingerii unor obiective de referință care cuprind formarea de deprinderi și abilități practice de utilizare a unor produse soft deseori complicate și dominate de interfețe neprietenoase față de utilizator (netransparente). Ceea ce conferă o accentuată notă de adaptabilitate este operativitatea impusă de aplicarea acestei metode prin alternarea expunerii cu demonstrația practică, elevii fiind astfel scoși din pasivitatea posturii de simpli receptori. Analogiile cu situații cunoscute fac din receptorul pasiv un participant activ la expunere. Expunerea nu se desfășoară în condiții perfect univoce, adică fără alternative și reveniri, nici la disciplinele cărora metoda le este caracteristică. La informatică, aceasta se întâmplă cu atât mai puțin. Elevul primește în condiții univoce doar ceea ce i se comunică în funcție de nivelul de cunoștințe dobândit, de propriile-i presupuneri, de experiența sa practică, de nivelul său de gândire, de înțelegerea codului de comunicație, ca să nu mai vorbim de oscilațiile de atenție. Profesorul trebuie să reproiecteze lecția prin prisma posibilităților elevilor și cu mijloacele lor de gândire. Accentul trebuie pus pe raționament, prin argumentări temeinice, prin scoaterea în evidență a modului în care trebuie să gândească. Expunerea trebuie să fie însoțită de un control permanent al gradului de receptivitate al clasei, urmărindu-se mimica elevilor (edificatoare în special la elevii mici), satisfacția înțelegerii lecției sau îngrijorarea și neliniștea în cazul în care elevul a pierdut firul explicației citindu-se pe fața elevilor, întrebările, repetiția, explicațiile suplimentare, analogiile cu alte noțiuni cunoscute permit realizarea unui control permanent al receptivității la expunere, în informatică recurgem neapărat la metoda expunerii (explicației) atunci când tema este complet nouă și printr-o metodă activă nu se poate descoperi noutatea, sau metoda activă este ineficientă din punctul de vedere al operativității. Astfel este necesară această metodă pentru a înțelege noțiunea de structură de date (inclusiv modalitățile de reprezentare), de comandă, funcție sau procedură standard (în legătură cu sistemul de operare sau mediul de programare ales), de raționament (într-un spațiu închis ales) și chiar a modalității de prezentare și introducere a unor programe utilitare, softuri de aplicație etc. în acest context, pentru prezentarea comenzilor unui sistem de operare, a unui editor de texte (sau grafic), a altor softuri mai complicate (prevăzute de programa școlară) se poate recurge la următoarele (sub)metode:

Expunerea (la tablă, prin slide-uri pe retroproiector/videoproiector sau prin PowerPoint) cu „desenarea" meniurilor și prezentarea funcțiilor fiecărei opțiuni, urmând ca elevul (prin aplicațiile de laborator) să exerseze fiecare funcție în parte, individual sau în grupe mici de lucru.

Prezentarea meniurilor și funcțiilor fiecărei opțiuni simultan cu exersarea acestora în cadrul orelor de aplicații practice de laborator.

Prezentarea meniurilor și funcțiilor fiecărei opțiuni simultan cu demonstrarea practică în momentul prezentării lor de către profesor, sarcina elevului fiind numai aceea de a urmări și reține modul de executare a operațiilor prezentate de profesor, urmând ca elevul să aplice cunoștințele dobândite în cadrul orelor de laborator, în aplicații
ample (integrate, de dorit, într-un mediu economic clar), care necesită utilizarea în mod repetat și în situații diferite a funcțiilor fiecărei opțiuni din meniul discutat.

5.1.2. Metoda conversației

Este o metodă care are în vedere comunicarea dintre profesor și elev, profesorul trebuie să fie în rolul unui colaborator care nu numai întreabă, ci și răspunde la întrebările elevilor, nu trebuie să apară în rolul examinatorului permanent. Prin metoda conversației se stimulează gândirea elevilor. Astfel elevii participă activ la lecție, ei putând să pună întrebări atunci când au neclarități. Această metodă este frecvent utilizată în învățarea informaticii.

Conversația poate avea diferite forme, în funcție de numărul de persoane, ea poate fi:

Individuală = are loc între un elev și profesor.

Colectivă sau frontală = întrebările sunt adresate întregii clase, iar elevii pot răspunde.

După obiectivele urmărite conversația poate fi:

Introductivă = este utilă pentru captarea atenției și reactualizarea cunoștințelor asimilate anterior.

Expozitivă = utilă pentru fixarea cunoștințelor.

Recapitulativă = utilizată pentru recapitularea și generalizarea unor rezultate prezentate anterior.

Evaluativă = se folosrște pentru verificare și evaluare.

Dezvoltată = atunci când se dorește abordarea unei teme noi, nu tocmai necunoscute.

Trebuie avută în vedere necesitatea formării vocabularului de specialitate dificultatea constând și în faptul că aceste cuvinte noi sunt introduse în același timp cu introducerea noțiunilor noi, ceea ce face ca îmbogățirea limbajului informatic să se facă simultan cu dezvoltarea și formarea gândirii informatice. Cunoașterea limbajului este utilă în rezolvarea problemelor și înțelegerea textelor și documentațiilor de specialitate. Dacă nu este stăpânit limbajul de specialitate, acest lucru provoacă inhibiție, imposibilitatea comunicării sau chiar o comunicare și o înțelegere defectuoasă, făcându-l pe elev timid, incoerent sau chiar ridicol în exprimare.

O altă clasificare a metodei conversației ar putea fi:

Euristică = se bazează doar pe întrebare/răspuns, în funcție de direcția spre care se îndreaptă dialogul, nu există reguli precise.

Tip dezbatere = constă într-un schimb de păreri, apoi se trag concluzii.

Catehetică = se aplică teste în care este verificată și memoria.

Condiții pe care trebuie să le îndeplinească:

precizie (vizând un singur răspuns).

rol instructiv, să nu se sugereze răspunsul.

stimularea gândirii și a capacității creative a elevilor
(De ce ?, Din ce cauză ?, In ce caz ? etc.).

enunțuri atrăgătoare și variate. Să se adreseze întregului colectiv vizat.

5.1.3. Problematizarea și învățarea prin descoperire

Problematizare = situație problemă.

Această metodă are nevoie de utilizarea unor tehnici care să facă elevul să conștientizeze conflictul dintre cunoștințele avute și o nouă informație, determinându-l să muncească pentru rezolvarea lui. Conflictele sunt de cel puțin două tipuri:

Contradicții între ceea ce poate elevul și situația în care e pus de cunoștințele predate. Aceste conflicte se datorează imposibilității elevului de a selecta dintre cunoștințele sale anterioare pe cele potrivite cu valoarea operațională de aplicabilitate a viitorului.

Incapacitatea elevului de a include noțiunile noi într-un sistem.

Există trei modalități principale de învățare prin problematizare și descoperire

Modalitatea inductivă

Modalitatea deductivă

Modalitatea prin analogie.

Problematizarea și descoperirea sunt metode formativ-participative, care fac apel la creativitate, scot în evidență voința elevului, ii dezvoltă imaginația, îi îmbogățește experiența. Această metodă se poate aplica în lecții practice delaborator.

Vom evidenția doar câteva aspecte în folosirea metodei rezolvării unor probleme. Dacă se dorește rezolvarea unei probleme cu ajutorul trebuie să ne întrebăm:

Ce știm în legătură cu domeniul implicat?

Cum sunt apreciate în prezent rezultatele?

Care strategiile aplicate ?

Ce ne motivează ?

5.1.4. Modelarea

Modelarea poate fi descrisă ca fiind un mod de lucru prin care gândirea elevului este condusă la descoperirea adevărului, folosind un așa-numit model și utilizându-se raționamentul prin analogie. Modelul și metoda în sine nu presupun o asemănare perfectă cu cazurile reale inițial specificate, ci numai o analogie rezonabila.

Modelarea are valoare euristică colaterală, prin utilizarea ei putându-se dezvolta spiritul de observație, capacitatea de analiză și sinteză, creativitatea. Elevul se obișnuiește să creeze noi probleme ce trebuie rezolvate, să adapteze algoritmi cunoscuți la situații noi etc. Realitatea înconjurătoare este percepută și înțeleasă pe baza unor modele deja cunoscute. Dezvoltarea deprinderilor de modelare, obișnuirea elevilor cu gândirea logică se realizează prin prezentarea exactă și clară a modelelor și prin transparența particularizărilor. Un exemplu ar putea fi elaborarea a algoritmilor. Utilizarea modelelor în realizarea algoritmilor presupune stabilirea unor analogii și în organizarea datelor de intrare, învățarea algoritmilor este legată de cunoașterea modului de organizare a datelor, de cunoașterea profundă a structurilor de date posibile a fi prelucrate ușor de către calculator. Etapa cea mai importantă este cea a descoperirii algoritmului, urmată de stabilirea modului de organizare a datelor, dar importanța acestui ultim aspect este esențială în determinarea performantelor produsului program care implementează algoritmul. Modelarea (ca metodă pedagogică) este definită ca un mod de lucru prin care gândirea elevului este condusă la descoperirea adevărului cu ajutorul modelului, grație raționamentului prin analogie. Modelarea similară constă în realizarea unui sistem de aceeași natură cu originalul care să permită evidențierea trăsăturilor esențiale ale originalului. O gamă variată de probleme sunt rezolvate prin metoda backtracking. Pentru implementarea într-un limbaj de programare a unui algoritm elaborat prin backtracking, elevul are nevoie de un model reprezentat de un program, cum ar fi cel de generare a permutărilor sau de rezolvare a problemei celor opt dame, și, prin mici modificări, el poate obține multe alte programe care implementează algoritmi ce rezolvă probleme clasice, cum ar fi: generarea aranjamentelor, combinărilor, problema parantezelor, partițiile unei mulțimi, problema celor opt turnuri etc. Similar se procedează în rezolvarea problemelor care necesită utilizarea stivelor sau a cozilor, folosind operațiile elementare cu elementele acestor structuri dinamice elementare. Momentele cunoașterii în procesul modelării sunt:

Trecerea de la original la model.

Transformarea modelului sau experimentarea pe model.

Transferul pe original a rezultatelor obținute pe model.

Trecerea de la original la model se face prin simplificare. Se impune ca simplificarea să nu fie exagerată, pentru a nu se omite trăsăturile esențiale ale originalului. Totodată, trebuie să nu se scape din vedere că valoarea modelului va fi apreciată prin prisma eficacității lui, adică a posibilităților pe care le oferă pentru atingerea scopului și că noile informații obținute pe baza modelului vor fi transferate cu grijă asupra originalului, având în vedere diferența dintre model și original. Modelul devine astfel purtătorul unei semnificații, informații, care poate fi exprimată printr-un suport material sau ideal.

Clasificarea modelelor:

Modele materiale, cu suport concret.

Modele ideale (virtuale), exprimate prin imagini, simboluri sau semne convenționale.

Învățarea informaticii prin modelare presupune două etape, într-o primă etapă, învățarea se va face pe baza modelelor construite „de profesori", etapă în care se vor analiza trăsăturile modelului și compararea lui cu originalul. Pentru a reliefa condițiile pe care trebuie să le îndeplinească modelul, se vor da și contraexemple. în a doua etapă, elevii vor fi deprinși să construiască singuri modele. Importanta descoperirii modelului de către elev constă în faptul că elevul este obișnuit să reprezinte într-o formă standard condițiile impuse de problemă și-și adâncește convingerea că informatica este un domeniu în care rezultatele pozitive se obțin doar printr-o înlănțuire logică de raționamente. Folosirea modelelor nu înseamnă impunerea unor metode care trebuie reținute și aplicate orbește. Se va pune accentul pe înțelegerea pașilor unui algoritm și se va încuraja prezentarea oricăror metode care exclud modelul și care se impun prin eleganță și eficiență. Elevii vor fi încurajați să-și dezvolte și să-și prezinte ideile proprii, contribuind astfel la creșterea încrederii în posibilitățile lor, în valoarea ideilor lor. Ei nu trebuie să fie obligați să reproducă ideile altora, să aștepte ca totul să fie prezentat de profesor, să asimileze rețete, ci să descopere metode noi, să le prezinte, analizeze și perfecționeze printr-o comunicare continuă și constructivă. Folosirea modelelor în învățare deschide pentru informatică o impresionantă arie de aplicabilitate (inclusiv utilizarea ei în predarea altor discipline, de la artele plastice la cele mai diverse domenii ale tehnicii).

5.1.5. Exemplificarea sau demonstrarea materialului intuitiv

Prin exemplificare sau demonstrație, în acest caz, înțelegem prezentarea sistematizată și organizată a unor obiecte, procese, experimente, cu scopul de a ușura înțelegerea intuitivă și executarea corectă a unor activități programate. Cuvântul intuiție din titlu înseamnă utilizarea oricărui raționament inductiv, în contextul temei și bagajului de cunoștințe ale elevului. Utilizarea intuiției împreună cu exemplificarea necesară poate implica folosirea a diverse modalități și tehnici didactice datorită diversității materialului de studiu. Exemplificarea sau demonstrarea materialului intuitiv presupune utilizarea obiectelor reale, cum ar fi: material grafic (planșe, scheme); retroproiector/videoproiector și material pretipărit; calculator (imagini grafice, multimedia, power point). in acest context putem spune că: Prin demonstrarea materialului intuitiv se înțelege prezentarea sistematică și organizată a unor obiecte, procese etc. sau producerea unor experiențe, fenomene în fala elevilor, cu scopul de a ușura înțelegerea și executarea corectă a unor activități.

Materialul intuitiv este frecvent folosit în numeroase lecții, cum ar fi:

învățarea algoritmilor de sortare, unde prin diferite moduri de reprezentare sunt urmărite grafic valorile care se compară și se schimbă între ele, conducând la ordonarea șirului.

învățarea metodei backtracking, unde folosind materialul natural se urmărește formarea soluției prin avansări și întoarceri repetate.

Vizualizarea ocupării și eliberării zonelor de memorie prin alocarea dinamică a variabilelor.

Ilustrarea modului de lucru cu elementele listelor simplu și dublu înlănțuite, a stivelor și a cozilor.

Echilibrarea arborilor binari (arbori AVL).

învățarea diagramelor în Excel, unde prin diferite moduri de reprezentare sunt urmărite grafic valorile din domeniile de celule selectate pentru a fi reprezentate în diagrama.

Nu este suficient ca un elev să vadă un material, el trebuie învățat să vadă. Poate că în acest moment ar trebui să aducem în discuție euristicile și încurajarea creativității. Se pot pune în evidență chiar euristici pentru dezvoltarea creativității:

• Încercați să aveți cât mai multe idei. Cu cât sunt mai multe, cu atât puteți selecta câteva „bune".

„Inversați" (reformulați, reiterați, puneți într-un alt context etc.) problema.

„Ghiciți" o soluție la întâmplare (chiar urmărind un Dicționar…).

Gândiți-vă la ceva distractiv, apropo de utilizările posibile ale rezolvării.

Gândiți-vă la probleme similare și la soluțiile acestora, chiar în contexte diferite.

Concepeți o listă generală „explicativă" de cuvinte-cheie, proprietăți utile, stimulente ș.a.m.d. care au cât de cât legătură cu tema în cauză.

5.1.6. Metoda exercițiului

La modul cel mai general, exercițiile pot fi privite ca acțiuni concrete efectuate conștient și repetat în scopul dobândirii unor priceperi și deprinderi (mai rar cunoștințe) noi, pentru a ușura anumite activități și a contribui la dezvoltarea unor aptitudini. Avantajele metodei exercițiului sunt:

Se poate forma o gândire productivă, creatoare, cu implicație financiară.

Se oferă posibilitatea câștigării unei anumite independențe.

Se oferă posibilitatea inițierii unui dialog-conversație cu obiective precise asupra unor metode și soluții.

Se activează atitudinea critică și poate crește discernământul elevilor în privința celor mai bune metode de lucru.

Se oferă profesorului o anumită posibilitate de a analiza și evalua activitatea sau performanțele generale ale unui elev.

Condiția primordială de reușită este dată în principal de selecția corespunzătoare a problemelor sau exercițiilor, precum și de activitatea de îndrumare-proiectare. Prin urmare, exercițiile sunt acțiuni efectuate în mod conștient și repetat de către elev cu scopul dobândirii unor priceperi și deprinderi și chiar cunoștințe noi, pentru a ușura alte activități și a contribui la dezvoltarea altor aptitudini, însușirea cunoștințelor de informatică este organic legată de exersarea utilizării unor softuri de aplicație, de rezolvarea unor probleme de programare etc. Nu există lecție în care să nu se aplice această metodă. Alte avantaje sunt concretizate în rezultatele aplicării ei: formează o gândire productivă; oferă posibilitatea muncii independente; oferă posibilitatea analizei diverselor metode și soluții de rezolvare a problemelor; activează simțul critic și autocritic și îi învață pe elevi să-și aprecieze rezultatele și metodele de lucru; oferă posibilitatea depistării și eliminării erorilor.

Exercițiile aplicative trebuie utilizate atât timp cât ele trezesc interesul. Repetarea lor nejustificată poate conduce la efecte contrarii. Contraexemplele însoțite de o analiză amănunțită vin să sublinieze trăsăturile esențiale, în același timp, analiza erorilor este utilă prin faptul că dezvăluie anumite lacune în cunoștințele elevilor.

O posibilă clasificare a problemelor/exercițiilor (relativ la capacitățile intelectuale pentru rezolvare) ar fi:

Exerciții de recunoaștere a unor noțiuni (unitate curentă de I/E, unitate de disc, memorie internă, comandă externă, programe executabile de tip .com sau .exe, HTTP-uri, telnet etc.).

Exerciții aplicative (programe pentru transcrierea unor formule, pseudocoduri). Aceste două clase de exerciții sunt recomandate în special pentru fixarea unor cunoștințe deja predate, în acest context poate fi utilă o complicare graduală a enunțului inițial, urmărindu-se memorarea mai bună a formulei sau a ideii algoritmului, cum ar fi: încadrarea acestuia într-un eventual alt tip de probleme cunoscute; complicarea lui în mod progresiv în vederea utilizării sale în alte situații; prezentarea unor cazuri-limită care pot conduce la rezultate eronate.

Exerciții grafice – planșe, vizualizări.

Exerciții complexe – presupun o analiză mult mai detaliată a problemei în ansamblu și implică descompunerea problemei în subprobleme, succesiv, până în momentul în care rezolvarea subproblemelor elementare este cunoscută.

Pentru exemplificarea acestei metode voi prezenta câteva fișe de lucru:

FIȘĂ DE LUCRU

1. Să se lanseze în execuție programul de gestiune a bazelor de date;

2. Să se creeze o bază de date nouă, sub numele Angajatii firmei;

3. Să se creeze un tabel care conține următoarele cinci câmpuri:

ID_Angajat, de tip AutoNumerotare;

Nume_Angajat , de tip Text, dimensiune 50;

Salariu_A, de tip Moneda;

Data_Angajarii, de tip Data/Ora;

Permis , de tip Da/Nu;

4. Să se seteze cheie primara câmpului ID;

5. Să se salveze tabelul sub numele Angajati ;

6. Să se introducă în tabel următoarele șase inregistrări:

Să se sorteze tabelul alfabetic după Nume_Angajat ;

8. Ștergeți înregistrarea cuID_Angajat=3;

9. Introduceți o înregistrare cu numele vostru ;

10. Sortați tabelul descendent după câmpul Salariu_A;

11. Să se creeze un nou tabel care conține următoarele câmpuri:

ID_A, de tip număr;

Numar copii , de tip număr;

Ajutor _social , de tip Moneda;

Varsta _ang , de tip număr ;

12. Să se seteze ca și cheie primară cheie primara câmpului ID _A ;

13. Să se salveze tabelul sub numele Ajutor_social ;

14. Să se introducă în tabel 5 înregistrări (articole) ;

15. Creați o interogare cu numele Salar <1000 care să conțină numele angajaților care au salar <1000 ;

16. Creați o interogare Permis care sa conțină angajații care dețin permis ;

FIȘĂ DE LUCRU

Să se creeze o bază de date cu numele Scoala conținând tabelul Elev cu urmatoarele atribute:

ID – de tip AutoNumber

Nume_elev – de tip Text

Prenume_elev – de tip Text

Varsta – de tip Number

Clasa -de tip Lookup Wizard (Expert cautare)– alegem opțiunea de tastare a unor valori și introducem urmǎtoarea listǎ de valori 9, 10, 11, 12

Data_nasterii – de tip Date

Media_generala – de tip Number

Caminist (Yes/No)

Bursier (Yes/No)

Adresa – de tip Memo

Se cere:

Să se adauge 7 înregistrări.

Să se introducă un nou câmp nationalitatea, apoi să se încarce cu valori și această coloană.

Să se pună condiția pentru câmpul Nume_elev să fie de maximum 15 caractere.

Să se pună condiția pentru câmpul Prenume_elev să fie de maximum 15 caractere.

Câmpul Media_generala sǎ conținǎ valori mai mari decât 5 și mai mici decât 10. Dacă se vor introduce valori ce nu corespund acestui criteriu să se afișeze un mesaj de eroare.

Să se pună condiția pentru câmpul Varsta sa conțină valori mai mari decât 15 și mai mici decât 19.

FIȘĂ DE LUCRU

Să se creeze o bază de date cu numele Scoala conținând tabelul Elevi cu următoarele atribute:

ID – de tip autonumerotare

Nume_elev – de tip Text

Clasa – de tip Lookup Wizard alegem optiunea de tastare a unor valori si introducem urmatoarea lista de valori: 9, 10, 11, 12

Abs sem1 – de tip Number

Abs sem2 – de tip Number

Localitate – de tip Text

Se cere:

Să se impună condiții ca toate campurile sa fie completate (Required- YES).

Să se încarce tabelul cu 5 înregistrări.

Să se sorteze tabelul în ordine alfabetică dupa câmpul Localitate.

Să se proiecteze o interogare care să afișeze numele elevilor, clasa, abs sem1 și abs sem2.

Să se proiecteze o interogare care să afișeze numele elevilor din clasa a 12-a.

Creați o interogare care afișează numele elevilor, clasa si localitatea, pentru valoarea localitatii introdusa de la tastatura.

Proiectați o interogare care să afișeze pe o coloană numele elevilor și pe o altă coloană calculează suma absențelor de pe sem1 si sem2.

Indicație: În dreptul campului se introduce numele coloanei (exp. Total:), apoi se introduce formula de calcul [Abs sem1]+[Abs sem2] – numele coloanelor se introduc intre paranteze patrate.

FIȘĂ DE LUCRU

Să se proiecteze o bază de date cu numele Concurs conținând tabelul Participanți cu următoarele atribute:

ID_elev – de tip autonumerotare

Nume_elev – de tip Text

Clasa – de tip Lookup Wizard alegem optiunea de tastare a unor valori si introducem urmatoarea lista de valori: 9, 10, 11, 12

Varsta – de tip Lookup Wizard alegem optiunea de tastare a unor valori si introducem urmatoarea lista de valori: 15, 16, 17, 18

Punctaj – de tip Number – punctajul trebuie sa fie cuprins intre 10 si 100 de puncte

Localitate – de tip text

Se cere:

Să se pună condițiile ca toate campurile sa fie completate (Required- YES)

Adăugați 10 înregistrări astfel încât să avem elevi din toate clasele.

Proiectați o interogare care afișează numele elevilor care au obținut un punctaj mai mare ca 70.

Proiectați o interogare care să afișeze numele și punctajul elevilor din cala a 12-a.

Proiectați o interogare care să afișeze numele elevilor din clasa a 10- a care au obținut un punctaj mai mare ca 50.

Proiectați o interogare care să afișeze numele elevilor cu varsta peste 17 ani

Proiectați un formular cu numele Participanti care să cuprinda toate câmpurile tabelului Participanți.

Proiectați un formular cu numele Punctaj care să cuprinda numele elevilor, clasa si punctajul obținut la concurs.

FIȘĂ DE LUCRU

Să se proiecteze o bază de date cu numele Spital care să conțină tabelul Pacienti cu următoarele atribute:

Nume_pacient – text format din maxim 40 de caractere

Adresa – text format din maxim 55 caractere

Data_nasterii, de tip data

Localitate, text format din maxim 20 de caractere

Cod_postal – număr

Telefon – text format din 12 caractere. Se va folosi proprietatea Input mask (Masca de intrare) și alegeți pentru numărul de telefon următorul format: (000)-000000

Vârsta, de tip număr

Se cere:

Adaugati 10 înregistrări în tabel.

Proiectați o interogare care să afișeze Numele și adresa pacienților din spital.

Proiectați o interogare care să afișeze toate datele despre pacienții cu vârsta de 50 de ani .

Proiectați un formular cu numele Form_pacienti care să utilizeze toate câmpurile tabelului Pacienți.

Proiectați un formular cu numele Form_date care să cuprindă numele pacientului, data nașterii, localitatea și telefonul. Inserati in antetul formularului numele bazei de date.

Realizați un raport care să afișeze toate câmpyrile tabelului Pacienți, grupati dupa localitati, iar in cadrul unei localitati ordonati alfabetic dupa numele pacientilor.

Realizați un raport care să afișeze doar câmpurile Nume_pacient, Adresa și Data_nașterii grupate după data nașterii.

FIȘĂ DE LUCRU

Să se proiecteze o bază de date Magazin care va conține tabelele :

1)Produse cu câmpurile:

cod produs, de tip număr, se setează cheie primară

denumire produs,de tip text

unitati monetare, de tip text

pret, de tip număr

Se încarcă tabelul cu 10 înregistrări.

2) Detalii factura cu câmpurile:

nr factura, de tip număr

cod produs, de tip număr

cantitate, , de tip număr

pret facturare, de tip număr

3)Facturi cu câmpurile:

nr factura, de tip număr

data facturii, de tip data

cod furnizor, de tip număr

4)Furnizori cu câmpurile:

cod furnizor, de tip număr

denumire furnizori, de tip text

adresa, de tip memo

Să se realizeze următoarea schemă de relații:

5.1.7. Metoda învățării în grupe mici

Activitatea de învățare pe grupe mici se definește ca o metodă în care sarcinile sunt executate de grupuri de elevi, grupuri care sunt câteodată autoconstituite și care se autodirijează. Activitatea în informatică se desfășoară în general în echipă, travaliul individual fiind o componentă a muncii corelate din cadrul unui grup de lucru. Tehnicile de organizare a muncii în unitățile de informatică evidențiază ca o formă de organizare echipa programatorului-șef, echipă în care fiecare membru are sarcini bine stabilite (de analiză, programare, implementare, exploatare), sarcini corelate între ele. Este normal ca și activitatea didactică să recurgă la metode de învățare colectivă, fără a neglija însă munca individuală, ci doar privind-o pe aceasta ca o componentă a muncii în echipă. Profesorii recunosc, în general, eficacitatea unei asemenea organizări a activității didactice și o integrează în arsenalul metodic al predării disciplinei. Criteriile de formare a grupelor sunt în funcție de obiectivele urmărite (însușirea de noi cunoștințe, rezolvare de probleme etc.): grupuri omogene, formate din elevi cu același nivel de cunoștințe; grupuri eterogene, formate din elevi de toate categoriile (foarte buni, buni și slabi), dar în proporții apropiate; grupuri formate pe criterii afective (prietenie, vecini de bancă). Numărul elevilor dintr-un grup poale varia de la 2 la 10, dar cele mai potrivite grupuri sunt cele formate din 4-6 elevi. La lecțiile de aplicații practice de laborator, grupurile de lucru formate din 4 elevi care dispun de două calculatoare par a fi cele mai eficiente. Grupuri formate din mai mult de 2 elevi la un calculator se dovedesc a fi neproductive. Este bine ca la întocmirea grupurilor să se stabilească criterii clare de formare și elevii să fie lăsați să se grupeze singuri, respectând criteriile cerute. Pentru grupurile omogene, sarcinile pot diferi în funcție de scopul propus. Pentru grupurile eterogene sau create pe criterii afective, sarcinile vor fi aceleași la fiecare grup, dar profesorul va rezerva sarcini suplimentare elevilor mai buni din fiecare grup. Etapele pretinse de această metodă de învățare sunt: repartizarea materialului (problemelor) fiecărui grup; munca independentă a grupurilor sub supravegherea profesorului; discutarea în plen a rezultatelor obținute. Activitatea profesorului se concretizează în două etape. Prima este una proiectivă, în care se pregătește materialul de repartizat pe grupe și materialul în plus pentru elevii buni, iar a doua, de îndrumare/supraveghere și de animare a activității grupelor de lucru. Ajutorul acordat grupelor de lucru trebuie să fie dat numai la cerere și în așa fel încât profesorul să se situeze pe poziția de colaborator și nu pe cea de autoritate care își impune părerile și soluția personale. Profesorul va interveni cu autoritate numai atunci când activitatea grupului se îndreaptă într-o direcție greșită. Când unul sau mai multe grupuri descoperă o soluție, propunerile lor vor fi discutate și analizate succesiv sau în paralel. Scopul acestei discuții este de a reliefa corectitudinea rezolvării, determinarea celei mai eficiente și mai elegante soluții și de a descoperi eventualele erori. Importanta dezbaterilor pentru dezvoltarea raționamentului este foarte marc, iar rolul profesorului este acela de a incita și coordona discuțiile în direcția obținerii concluziilor care se impun. Se impută, pe bună dreptate, acestei munci în grup o intensitate și o productivitate scăzute. Diversificarea sarcinilor grupurilor și împărțirea sarcinilor între membrii grupurilor atenuează această deficientă. Dacă prin activitatea în grup se intenționează dobândirea de noi cunoștințe prin lucrul cu manualul, documentația sau prin testarea unor produse soft, profesorul este obligat să organizeze dezbaterile finale care să stabilească dacă elevii și-au însușit corect noțiunile și și-au format deprinderi corecte. Este de asemenea greșit să se lucreze mereu cu grupuri constituite după aceleași criterii, pentru că în acest caz fie sunt suprasolicitați elevii buni din grupurile eterogene, iar elevii slabi se bazează exclusiv pe aportul liderilor de grup, fie, în grupurile omogene, elevii slabi se complac în postura în care se află și nu mai încearcă să scape de acest calificativ. Alte câteva probleme pot fi abordate sub un unghi diferit în acest context. Astfel, se pot pune întrebări mult mai individualizate (acestea nu (in neapărat de conținutul in sine al lecției). Ce întrebări se pun și modul în care se pun poate fi mai important decât întrebarea în sine. Apoi, este mai simplă „contactarea" elevilor în timpul lecției și chiar după ea. Susținem, ca prioritate și soluție la anumite probleme locale de învățământ, aducerea unor specialiști care lucrează în lumea reală pentru a preda lecții de sinteză, lecții speciale etc.

5.1.8. Metoda lucrului cu manualul și documentația

Manualele școlare, purtătoare ale valențelor formative prin deosebitul lor conținut metodic și didactic, reprezintă o limită impusă de programa școlară din punctul de vedere al conținutului informativ, în informatică, mai mult decât în alte domenii, manualul este supus perisabilității conținuturilor prin frecvența cu care disciplina este receptivă la noutățile domeniului. Realitatea didactică reliefează faptul că elevul folosește pentru învățarea teoriei doar notițele luate în clasă la predare și, din considerente de comoditate sau de obișnuință, foarte puțin (sau deloc) manualele. Acestea sunt consultate în cel mai fericit caz doar pentru citirea enunțurilor problemelor. Atitudinea de reținere sau de respingere fată de manual are consecințe negative atât asupra caracterului formativ, cât și asupra celui informativ al învățării. Capacitatea de raționament a unui copil nu se formează numai după modele de raționament oferite de profesor, ci și prin eforturi proprii, prin activitatea proprie de căutare și comparare cu alte scheme de raționament. Valoarea acestei metode nu constă numai într-o însușire temeinică a cunoștințelor, ci și în formarea unor deprinderi de activitate intelectuală. Mulți elevi încheie ciclul liceal fără a avea formate deprinderi de lucru cu manualul și documentația, ceea ce le creează serioase probleme de adaptare și explică eșecurile din primul an de studenție și greutatea de adaptare la cerințele studiului universitar. Metoda muncii cu manualul este un aspect al studiului individual și se introduce ca metodă, treptat, sub directa îndrumare și supraveghere a profesorului.

Metoda se aplică numai lecțiilor care au în manual o redactare sistematică și accesibilă nivelurilor de vârstă și de cunoștințe ale elevilor. Metoda poate fi aplicată pentru studiul unor aplicații soft, limbaje procedurale (de exemplu, HTML) sau în studiul comenzilor sistemelor de operare. Elevilor li se recomandă studiul temei stabilite pentru acomodarea cu noțiunile, apoi profesorul reia prezentarea cu sublinierea aspectelor esențiale. Având o asemenea bază, profesorul se poate concentra asupra discursului său (ceea ce urmează este în strânsă legătură și cu precedentele metode). Dacă este bine organizat, există următoarele avantaje:

Urmărirea atentă a audienței : fiecărui „ascultător" îi poate fi sugerată ideea că este personajul principal, că el este cel vizat în primul rând.

Noi porțiuni de text pot fi ușor introduse suplimentar, prin referirea la „manual".

Se prezintă lucruri deja verificate. Nimic nu poale „merge rău", exceptând… îmbolnăvirea lectorului.

Stresul fiecărui elev în parte poate fi micșorai, el știind că nu este „destinatarul" special.

Există posibilitatea unui „feedback" rapid și anumite principii de învățare pot fi folosite imediat.

Există posibilitatea pregătirii prealabile a materialului, cu durată determinată, inclusiv cea a expunerii.

Posibilitatea de control asupra a ceea ce s-a transmis/recepționat, cui, când, sub ce formă, precum și a modului „de reacție" este foarte mare.

Desigur că există și dezavantaje. Nu insistăm, pentru că ideea este că fiecare avantaj de mai sus devine un dezavantaj dacă profesorul este un prost gestionar al metodelor și timpului său. Oricum, se poate ajunge, din partea clasei, la pasivitate, stagnare, plictiseală, lipsă de individualizare etc.

5.1.9. Metoda jocurilor didactice

Jocurile didactice (și nu numai) pe calculator au valențele lor educative. Ca metodă de învățare, jocurile didactice dau rezultate deosebite în special la clasele mici, dar marele pericol care planează asupra acestei metode de instruire îl constituie acele aplicații soft care au o încărcătură educativă redusă, dar prin atractivitate captivează și rețin atenția elevului, uneori ore în șir, fără ca acesta să dobândească cunoștințe sau deprinderi pe măsura efortului făcut. Un rol aparte se atribuie jocurilor manipulative, prin care elevul devine conștient de proprietățile obiectului studiat, își formează deprinderi și dexterității de utilizare a acestuia prin simularea pe calculator a utilajului sau dispozitivului respectiv. Aceste jocuri, numite uneori și simulatoare, necesită în cele mai frecvente cazuri echipamente periferice suplimentare, unele specializate pe lângă cele clasice. Amintim în acest caz utilizarea unor căști speciale pentru obținerea efectului de realitate virtuală, echipamente care simulează condiții de zbor (pentru pilotaj) ele. Alte tipuri de jocuri, numite reprezentative, prin simbolizarea sau abstractizarea unor elemente reale, conduc la descoperirea unor reguli de lucru (sau joc) cu aceste elemente, dezvoltând în acest fel imaginația elevului. Ce altceva reprezintă un produs soft (de exemplu, un editor grafic sau de text) alunei când înveți să-1 utilizezi, decât un joc mult mai serios? Chiar dacă metoda nu este caracteristică studiului informaticii, la limita dintre jocul didactic și învățarea asistată de calculator se situează o bună parte dintre software-urile de învățare, atât a informaticii, cât și a altor discipline.

5.1.10. Instruirea programată și învățarea asistată de calculator

Instruirea programată poate fi aplicată cu mare succes în momentele în care obiectul primordial al predării îl constituie utilizarea unui mecanism real. în cadrul instruirii programate, esențiale devin probele și produsele demonstrative, pe care ar trebui să le descriem elevilor. Trebuie avut în vedere ca numărul de ore afectat acestei instruiri programate să nu fie foarte mare. Acestea trebuie să includă un număr suficient de ore de verificare a cunoștințelor acumulate, evitându-se însă monotonia și instaurarea plictiselii (se recomandă utilizarea alternativă a altor metode). Trebuie evitată și folosirea metodei un timp îndelungat, lucru care poate conduce în anumite situații la o izolare socială a elevului. O idee pentru contracararea acestor efecte ar fi creșterea numărului de ore sau organizarea activităților pe grupuri sau în echipă. Instruirea asistată de calculator este un concept diferit de instruirea programată doar prin modalitatea de utilizare. Există aceleași premise și moduri de utilizare, cu excepția faptului că un sistem de calcul devine principala interfață dintre un profesor și un elev. Absolut toate noțiunile, conceptele, exercițiile, problemele, evaluările, testările, prezentările legate de o anumită temă în cadrul unei lecții (inclusiv estimarea îndeplinirii obiectivelor) sunt îndepliniri, dirijări, verificări cu ajutorul calculatorului (mediul soft corespunzător). Procesul de predare-învățare și verificare-evaluare funcționează pe baza principiului cibernetic comandă–control-reglare (autoreglare). Instruirea programată, ca metodă didactică, presupune construirea unor programe de învățare care, prin fragmentarea materialului de studiat în secvențe, realizează o adaptare a conținuturilor la posibilitățile elevilor, la ritmul lor de învățare, asigură o învățare activă și o informare operativă asupra rezultatelor învățării, necesară atât elevului, pentru autocorectare, cât și profesorului, în elaborarea programelor de învățare se au în vedere următoarele operații:

precizarea obiectivelor operaționale în funcție de conținut și posibilitățile elevilor;

structurarea logică a conținutului după principiul pașilor mici și al învățării gradate;

fracționarea conținutului în secvențe de învățare (unități didactice) inteligibile și înlănțuite logic;

fixarea după fiecare secvență a întrebărilor, exercițiilor sau problemelor ce pot fi rezolvate pe baza secvenței informaționale însușite;

stabilirea corectitudinii răspunsurilor sau soluțiilor elaborate ; aceasta se poate realiza fie prin alegerea dintre mai multe răspunsuri posibile (trei, patru sau chiar cinci) – iar în situația în care nu s-a ales răspunsul corect, se poate recurge la întrebări suplimentare -, fie se elaborează un răspuns și se compară cu cel corect.

Ca orice inovație, instruirea programată a trecut prin câteva faze contradictorii. La început s-a lovit de rezerva tenace a tradiției și de dificultățile materiale (tehnice), apoi, după ce a câștigat teren în conștiința teoreticienilor și practicienilor, s-au exagerat într-o oarecare măsură valențele ei aplicative, creându-se iluzia descoperirii pietrei filosofale în domeniul pedagogic, în final, după o analiză lucidă, s-a admis că există părți pozitive și părți negative. Criticile aduse instruirii programate sunt atât de ordin psihologic, cât și de ordin pedagogic și metodic. Psihologic, instruirii programate i se impută faptul că nu ține seama de principiile psihologice ale învățării, vizând învățarea ca o simplă succesiune și înmagazinare de fapte. De asemenea, se știe că motivația învățării nu poate fi analizată numai prin prisma reținerii și învățării imediate, făcând abstracție de interesul elevului față de conținut, în plus, lucrând singur sau cu calculatorul, elevul se simte izolat. Pedagogic vorbind, fărâmițarea conținuturilor este în detrimentul formării unei viziuni globale, iar valoarea cunoașterii imediate de către elev a rezultatului obținut are valențe contestabile. Metodic, decupajul analitico-sintetic al conținuturilor îngustează elevului posibilitatea formării aptitudinilor de analiză și sinteză. Aceste critici au determinat mutații serioase în concepția de aplicare a metodei, dar practica didactică dovedește că atunci când se cunosc și se evită cauzele care generează efecte negative, metoda produce rezultate bune. Tendințele de îmbunătățire a aplicării metodei se îndreaptă spre alternarea utilizării metodei cu celelalte metode clasice. Inserarea într-o lecție programată a unor metode clasice schimbă determinarea muncii școlare, repunându-1 pe elev în directă dependență de activitatea profesorului și dându-i acestuia posibilitatea să verifice gradul de însușire a cunoștințelor conținute în program. O altă tendință este aceea de a modifica modul de redactare al programului, în special prin mărirea volumului de informație din unitățile logice și prin separarea părții de verificare, existând situații în care verificarea se va face după câteva ore sau chiar a doua zi. în plus, în program se pol insera secvențe independente, care să necesite timp mai mare de gândire sau de lucru. Izolarea imputată învățării programate poate fi contracarată prin alternarea cu munca în grup sau chiar prin învățare programată în grup, situație în care grupul parcurge în colectiv un program special conceput în acest sens.

Perspectiva învățării asistate de calculator, inclusiv prin intermediul Internetului, este certă. Ea oferă posibilitatea prezentării programului, verificării rezultatelor și corectării erorilor, modificând programul după cunoștințele și conduita elevului. Calculatorul nu numai că transmite un mesaj informațional, dar el poale mijloci formarea și consolidarea unor metode de lucru, de învățare. Se poate afirma că învățarea asistată de calculator nu numai că învață elevul, dar îl și învață cum să învețe. Prin aplicarea acestei metode de învățare nu se întrevede diminuarea rolului profesorului. Dimpotrivă, sarcinile lui se amplifică prin faptul că va trebui să elaboreze programe și să le adapteze la cerințele procesului educativ. Oricât de complete ar fi programele de învățare asistată de calculator, profesorul rămâne cea mai perfecționată mașină de învățat. Pentru informații suplimentare, vezi site-ul MECI.

Instrumente (mijloace) de predare

Metodele practicate de profesorul de informatică vor fi eficiente dacă acesta va apela hi:

– calculator;

– produsele software adecvate învățării la nivelul clasei respective (de exemplu: acces la poșlă electronică, echipamente de conectare la Internet, sistemul Windows etc.)i

– filme;

– soft-uri educaționale și soft-uri de învățare de tip Tutorial;

– cărți, reviste de specialitate; -planșe;

– documentații;

– retroproiector;

– programe demonstrative.

În cazul studierii editoarelor de texte poate fi foarte util studiul comparativ al unor publicații În căutarea celui mai "frumos" sau celui mai "coreei" document.

În cazul tabelatoarelor exersarea facilităților de sortare, de evaluare a expresiilor aritmetice între elementele liniilor și coloanelor tabulatorului, va demonstra elevilor utilitatea acestor tipuri de soft.

În predarea algoritmilor se vor folosi:

1 – exemple simple din viața de zi cu zi;

2 – algoritmizarea unor activități simple din viața elevilor sau a școlii;

3 – analiza problemei ca o fază esențiala în rezolvarea problemelor cu ajutorul calculatorului;

4 – analiza eficienței algoritmului (în cazul învățământului specializat – a complexității);

5 – verificarea corectitudinii unui algoritm (metoda "cutiei negre" și a "cutiei transparente").

În cazul predării bazelor de date se va pune accent pe:

1 – crearea, vizualizarea, modificarea bazelor de date;

2 – scrierea unor programe de prelucrare a datelor din baza de date;

3 – exersarea operațiilor de căutare, sortare;

4 – extragerea unor informații statistice.

Metode de evaluare pentru atingerea obiectivelor

În predarea informaticii trebuie acordata o importanță deosebită etapelor de evaluare a modului în care s-au atins obiectivele propuse. Se recomandă următoarele modalități de evaluare:

1 – verificare (scris și oral);

2 – exerciții practice;

3 – rezolvarede probleme;

4 – concursuri de durată scurtă tn cadrul orei;

5 – utilizarea poștei electronice;

6 – completare de teste (de tip grilă și altele, care seamănă cu teste de logică, de gândire, de inteligență).

Pentru a verifica deprinderea de a elabora pagini Web, se pot organiza concursuri ne grupe; elevii vor fi încurajați să caute pe Internet diverse informații cu ajutorul unui browser. în cazul studiului editoarelor de texte fi a tabelatoarelor vor fi utile:

7 – exersarea;

8 – editarea de texte sau tabele după modele;

9 – concursurile de durată scurtă în cadrul orelor de laborator;

10 – evaluarea continua pe perioada realizării activității practice.

În timpul predării algoritmilor se recomandă:

11 – întocmirea de către elevi a unor scheme logice care să reprezinte un algoritm discutat;

12 – exerciții realizate pe programe scrise de alții;

13 – verificarea capacității elevilor de a urmări efectul unui algoritm cu un tabel de verificare;

14 – verificarea capacității elevilor de a scrie programe simple;

15 – discutarea greșelilor tipice, analizarea motivelor apariției acestora;

16 – verificarea capacității de a utiliza facilitățile de depanare ale mediului;

17 – aplicații care pot ti urmărite pe rețea, corectate, îndrumate de profesor;

18 – elaborarea unui proiect complex în care să se trateze probleme studiate; proiectul trebuie realizat în grupuri de câte 3-5 elevi.

Anexe – proiecte didactice, teste

A1

PROIECT DIDACTIC

Colegiul Nașional Avram Iancu, Ștei

Disciplina: TIC (tehnologia informației și a comunicațiilor)

Clasa: a X-a

Data:

Profesor:

Subiectul lecției: Baze de date generalități. Obiectele bazei de date

Unitatea de învățare: Sistemul de baze de date. Proiectarea bazelor de date

Tipul lecției: transmitere de cunoștințe

Scopul lecției: asimilarea de noi cunoștințe

Loc de desfășurare: cabinet TIC;

Obiective operaționale :

Informative

Elevii vor fi capabili să :

identifice proprietățile bazelor de date;

identifice avantajele utilizării bazelor de date;

prezinte modul de realizare pentru securitatea și protecția datelor în bazele de date;

Formative

Elevii vor ști :

să opereze cu obiectele bazelor de date;

să creeze o bază de date;

Afective

Elevii vor putea :

să realizeze importanța studierii bazelor de date

să aibe satisfacția muncii personale

Competențe :

– aplicarea conceptelor și operațiilor elementare ale operației Access;

Resurse:

Metode de învățământ: brainstorming, expunere, demonstrație, exercițiul practic;

Organizarea activității cu elevii: frontal (pentru prezentarea noțiunilor generale), individual (pentru identificarea obiectelor bazei de date), pe grupe (pentru rezolvarea aplicației), pentru verificarea feedbackului se va aplica un test;

Resurse materiale: manual, fișe de lucru, calculatoarele;

Bibliografie: manual online Microsoft Access 2007, manualul școlar;

Plan de lecție

Test de evaluare

Operațiile care se pot efectua asupra datelor dintr-o într-o bază de date sunt: 2 puncte;

introducerea de noi date (insert);

ștergerea unor date existente în baza de date (delete);

actualizarea datelor stocate (update);

înserarea unor grafice;

Răspundeți cu Adevărat sau Fals:

2. Datele memorate în fișiere pe disc într-o aplicație de calcul tabelar (Microsoft Excel) sau documente memorate de un editor de texte (Microsoft Word) sunt considerate baze de date; 2 puncte;

Adevărat;

Fals;

3. Orice persoană care dorește să se conecteze (log in) la o bază de date trebuie să dețină un cont (accont, user) și o parolă (password). 2 puncte; a. Adevărat;

b. Fals;

4. Dispozitivul de securizare a bazei de date numit firewall, este un calculator pe care este instalat un software special care permite accesarea calculatorului pe care este stocată baza de date numai de către anumite calculatoare. 2 puncte; a. Adevărat;

b. Fals;

5. Orice coloană dintr-un tabel se numește înregistrare. 2 puncte;

a. Adevărat;

b. Fals;

Barem de corectare;

1. a,b,c,d; 2 puncte;

2. b. Fals; 2 puncte;

3. a. Adevărat; 2 puncte;

4. a. Adevărat; 2 puncte;

5. b. Fals; 2 puncte;

A2

PROIECT DIDACTIC

Colegiul Național Avram Iancu, Ștei

Disciplina: TIC (tehnologia informației și a comunicațiilor)

Clasa: a X-a

Data:

Profesor:

Subiectul lecției: Crearea unei reguli de validare pentru un câmp al unui tabel

Unitatea de învățare: Sistemul de baze de date. Proiectarea bazelor de date

Tipul lecției: fixarea cunoștințelor

Scopul lecției: formare de priceperi și deprinderi

Loc de desfășurare: cabinet TIC;

Obiective operaționale :

Informative

Elevii vor fi capabili să :

identifice proprietățile bazelor de date;

identifice avantajele utilizării bazelor de date;

prezinte modul de realizare a unui tabel;

prezinte modalitatea de creare a unei reguli de validare pentru un câmp al unui tabel;

Formative

Elevii vor ști :

să opereze cu obiectele bazelor de date;

să creeze o bază de date;

să proiecteze un tabel și regulile de validare pentru câmpurile acestuia;

Afective

Elevii vor putea :

să realizeze importanța studierii bazelor de date

să aibe satisfacția muncii personale

Competențe :

– aplicarea conceptelor și operațiilor elementare ale operației Access;

Resurse:

Metode de învățământ: brainstorming, expunere, demonstrație, exercițiul practic;

Organizarea activității cu elevii: frontal (pentru prezentarea noțiunilor generale), individual (pentru identificarea obiectelor bazei de date), pe grupe (pentru rezolvarea aplicației).

Resurse materiale: manual, fișe de lucru, calculatoarele;

Bibliografie: manual online Microsoft Access 2007, manualul școlar;

Plan de lecție

FIȘĂ DE LUCRU

Să se creeze o bazǎ de date cu numele Liceu conținând următoarele tabele:

Tabelul Clase cu urmǎtoarele câmpuri:

id_elev , autonumerotare

clasa (de tip Lookup Wizard (Expert cautare)– alegem opțiunea de tastare a unor valori și introducem urmǎtoarea listǎ de valori: 9A, 9B, 9C, 9D, 10A, 10B, 10C, 10D, 11A, 11B, 11C, 11C, 11D, 12ª, 12B, 12C, 12D

nr_elevi

diriginte

sala

profil (cu urmǎtoarea listǎ: mate-info, stiintele naturii, filologie).

Să se impună următoarele urmǎtoarele condiții:

Câmpul nr_elevi sǎ conținǎ valori mai mari decât 20 și mai mici decat 30. În cazul introducerii unei valori gresite sǎ se afișeze un mesaj de eroare.

Câmpul sala sǎ conținǎ valori mai mari decât 1 și mai mici decât 30. In cazul introducerii unei valori greșite sǎ se afișeze un mesaj de eroare.

Tabelul Diriginti cu urmǎtoarele câmpuri:

cod_diriginte , autonumerotare

Nume_dirig de tip Lookup Wizard (Expert cautare)– alegem opțiunea de extragere a valorilor din tabela Clase câmpul diriginte)

specializarea (matematica, informatica, istorie, chimie, fizica, etc)

vechime.

Tabelul Elev cu urmǎtoarele câmpuri:

ID – de tip AutoNumber

Nume_elev – de tip Text

Prenume_elev – de tip Text

Varsta – de tip Number

Clasa -de tip Lookup Wizard (Expert cautare)– alegem opțiunea de tastare a unor valori și introducem urmǎtoarea listǎ de valori 9, 10, 11, 12

Data_nasterii – de tip Date

Media_generala – de tip Number

Caminist (Yes/No)

Bursier (Yes/No)

Adresa – de tip Memo

2. Să se încarce cu câte 10 înregistrǎri fiecare tabel.

3. Setați cîmpul Media_generală a tabelului Elev să aibă 2 zecimale.

A3

PROIECT DIDACTIC

Colegiul Național Avram Iancu, Ștei

Disciplina: TIC (tehnologia informației și a comunicațiilor)

Clasa: a X-a

Data:

Profesor:

Subiectul lecției: Relații între tabele Microsoft Access

Unitatea de învățare: Sistemul de baze de date. Proiectarea bazelor de date

Tipul lecției: lectie mixtă

Scopul lecției: asimilare de cunoștințe noi și formare de priceperi și deprinderi

Loc de desfășurare: cabinet TIC;

Obiective operaționale :

Informative

Elevii vor fi capabili să :

să explice noțiunea de realație între tabelele unei BD;

să cunoască cele trei tipuri de relații;

Formative

Elevii vor ști :

să elaboreze relații pentru corelarea informațiilor dintr-o BD Microsoft Access;

sa construiască BD ținând cont de relațiile dintre ele;

să elaboreze diferite tipuri de aplicații Access;

Afective

Elevii vor putea :

să realizeze importanța studierii bazelor de date;

să aibe satisfacția muncii personale;

Competențe :

– aplicarea conceptelor și operațiilor elementare ale operației Access;

Resurse:

Metode de învățământ: expunere, demonstrație, exercițiul practic;

Organizarea activității cu elevii: frontal (pentru prezentarea noțiunilor generale), individual (pentru identificarea obiectelor bazei de date), pe grupe (pentru rezolvarea aplicației).

Resurse materiale: manual, fișe de lucru, calculatoarele;

Bibliografie: manual online Microsoft Access 2007, manualul școlar;

Plan de lecție

Fișa de lucru

Creați baza de date BD SCOALA.

Creați tabelele :

Tabelul CLASE, având structura:

Tabelul ELEVI, având structura:

Incărcați tabelele cu 4 inregistrări.

Realizați legatura dintre cele 2 tabele cu ajutorul câmpului cod :

Instrumente baze de date -> Relații.

Structura tabelelor este:

O posibilă populare a tabelelor este propusă în continuare:

Schema relațională a BD SCOALA este reprezentată în desenul de mai jos:

A4

Test

Realizați în Access baza de date Rețete, care conține tabelul Rețete cu următoarea structură:

(1p)

Cerințe:

Să se încarce tabelul cu date, după cum urmează:

(2p)

Să se proiecteze o interogare care să utilizeze câmpurile Nume_prenume_doctor, Specializare, Gratuita, Data, cu numele Doctor Popa Florica, care să afișeze doar rețetele eliberate de doctorul Popa Florica. (1p)

Proiectați interogarea care să afișeze toate datele despre rețetele gratuite utilizând tabelul Rețete. (1p)

Proiectați interogarea care să afișeze toate datele despre rețetele eliberate înainte de data 20,08,2015. (1p)

Să se adauge tabelului creat un nou câmp cu numele Valoare_reteta, de tip monedă. (1p)

Proiectați formularul cu numele Date, care să permită modificarea și adăugarea de noi înregistrări în tabelul Retete. (1p)

Proiectați tabelul Date_medicamente cu următoarele câmpuri:

ID_med – număr,

Medicament – text, dimensiune 50,

Cantitate – număr,

Unit_de_masura – text, dimensiune 8,

Pret – monedă (1p)

OBS:

timp de lucru 30 de minute

se acordă 1 punct din oficiu

A5

Test

1. Creați baza de date Liceu în directorul de lucru cu numele vostru. 1 punct

2. Creați tabelul Discipline cu următoarea structură: 1 punct

ID_disciplină – număr

Disciplina – text, dimensiune 25

Clasa – text, dimensiune 3

Teză – de tip Da/Nu

Ore_pe_sapt – număr

3. Creați tabelul Elevi cu următoarea structură: 1 punct

ID_elev – număr

Nume_prenume – text, dimensiune 60

Clasa – text, dimensiune 3

Bursier – de tip Da/Nu

Vârsta – număr

4. Creați tabelul Catalog cu următoarea structură: 1 punct

ID_disciplină – număr

ID_elev – număr

Nota – număr

Data – data/ora

5. Să se populeze cu câte 5 înregistrări fiecare tabel. 1 punct

6. Setați cheie primară astfel : ID_disciplina din tabelul Discipline; 1 punct

ID_elev dintabelul Elevi.

7. Realizați o legătură între câmpul ID_elev, din tabelul Elevi și câmpul ID_elev, din tabelul Catalog și o legătură între câmpul ID_disciplină, din tabelul Discipline și câmpul ID_disciplină , din tabelul Catalog. 1 punct

8. Impuneți restricția de integritate referențială celor două legături create. 1 punct

9. Să se creeze câte un formular automat sub formă tabelele Discipline și Elevi. 1 punct

OBS:

Timp de lucru 30 de minute;

Se acordă un punct din oficiu.

A6

Fișă de evaluare access

Creați o bază de date BD cu numele Biblioteca cu tabelul Carti, cu structurai :

id_carte (N), titlu (T), autor (T), editura (T), data_intrare (D), pret (N), nr_pagini (N), manual (Da/Nu).

Stabilii obligativitatea completării câmpurilor: id_carte, titlu, autor, manual, data_intrare, pret.

Stabiliți următoarele reguli de validare:

data_intrare <= data curentă

nr_pagini > 0

Stabiliți data curentă ca valoare implicită pentru data intrării carților în bibliotecă.

Creați tabelul Cititori, cu structura: id_cititor (AutoNumber), cnp (N), nume (T), adresa (T).

Creați tabelul Operatii cu structura: id_operatie (N), id_carte (N), id_cititor, data_imprumut (D), data_restituire (D).

Creați relațiile Carti1,nOperatii și Cititori1,nOperatii, cu următoarele reguli de integritate:

Este interzisă încărcarea în tabelul Operatii a unei înregistrări pentru o carte care nu se află în tabelul Carti.

modificarea id-ului unei cărți în tabelul Carti determină automat modificarea id-ului și în tabela Operatii.

ștergerea unei cărți din tabelul Carti determină ștergerea tuturor înregistrarilor corespunzatoare din tabelul Operatii.

Creați un raport Carti pe baza tabelului Carti, cu grupare după editura și ordonare alfabetic după titlu.

Creați un formular Operatii pe baza tabelului Operatii, cu aspectul Table (Tabel), stilul International (Internațional).

Inserati în subsolul formularului Operatii, o casetă text în care să fie calculat prețul total al cărților din bibliotecă.

Completați tabelele Carti, Operatii si Cititori cu un număr suficient de înregistrări, care să permită verificarea îndeplinirii cerințelor de la punctele anterioare.

OBS:

Timp de lucru 50 de minute;

Se acordă un punct pentru fiecare cerință.

Cap. VI. Proiectarea aplicației

Aplicația care însoțește această lucrare își propune să optimizeze exploatarea fluxurilor de informații din Colegiul Național Avram Iancu. Într-o astfel de școală funcționează două cicluri: ciclul gimnazial ( V-VIII ) și ciclul liceal ( IX-XII ). Disciplinele care se studiază la fiecare clasă sunt prevăzute în planul de învățământ, la fel și numărul minim sau maxim de ore pentru fiecare disciplină. Aplicația este realizată în Access 2007.

Baza de date va conține următoarele categorii de informații:

Date personale ale elevilor

Disciplinele studiate de fiecare clasă și profesorii care predau disciplinele

Notele obținute de elevi la diverse discipline

Observații psihologice și caracterizări ale elevilor

Date referitoare la profesori

Baza de date va trebui să răspundă următoarelor cerințe:

Să permită introducerea datelor în catalog pentru fiecare elev și vizualizarea notelor deja înregistrate

Să permită afișarea diferitelor rapoarte cu datele elevilor

Să permită studierea de către psiholog, diriginte, părinți a fișelor de observații individuale

Să afișeze rapoarte despre datele personale ale profesorilor

Să afișeze rapoarte în care sunt calculate automat mediile elevilor la fiecare disciplină

Informațiile necesare acestei aplicații sunt memorate în baza de date Proiect scoala cu următoarele tipuri de entități:

Elevi

Note

Discipline

Fișe de observație

Profesori

Plan_materii

Vom crea următoarele tabele:

Tabelul de relații:

Bibliografie

Cârstoiu, Dorin, Baze de date relaționale, Editura Printech,1999

Cerghit, Ioan, Sisteme de instruire alternative și complementare. Structuri, stiluri și strategii, Editura Aramis, București, 2002.

Clara Ionescu, Metodica predării informaticii, Cluj, 1999.

Constantin Popescu, Aurel Stepan, Sisteme de Operare, Editura Universității din Oradea, 1999.

Constantin Popescu, Dan Noje, Introducere în Informatică, Editura Universității din Oradea, 1999.

Cristian Masalagiu, Ioan Asiminoaei, Didactica predării informaticii, Ed. Polirom, 2004.

Cristian Masalagiu, Ioan Asiminoaei, I Maxim, Metodica predării informaticii. Ed. MatrixRom, Bucuresti, 2001.

C. Cucoș, Pedagogie, Ed. Polirom, Iași, 1996

Ioan Cerghit, Metode de învățământ, E.D.P., București, 1973

Ionescu, Felicia, Baze de date relaționale și aplicații, Editura Tehnică, 2004

Microsoft Office Access 2007, Manual pentru uz școlar, ISBN: 978-973-0-05945-8

Pribeanu, Costin, Baze de date și aplicații, Editura MatrixRom, 2000

Radu, I.T., Evaluarea în procesul didactic, EDP, București, 2000, p. 173.

Similar Posts