TUTORIALE  TIC

COLEGIUL  ECONOMIC  "DPM"  ALBA   IULIA

Profesor  Simona  Dogaru ,    ISBN    978-973-0-31260-7 Alba Iulia, 2020

ISBN   978-973-0-31261-4 ;   Alba Iulia, 2020  

 

 

Clasa a IX-a Structura calculatorului Windows
Word Formatare Tabele, obiecte si formule matematice Cuprins,note subsol, unelte de desenare
HTML Tema 9
Clasa a X-a
Excel Formatari si grafice Formule si calcule matematice. Functii Baze de date Scenarii
Power Point Tema 10
Clasa a XI-a
Access Tabele Relatii intre tabele Interogari Rapoarte, formulare si etichete
Proiecte Tema 11
MATEMATICA Analiza matematica XI Reprezentarea functiilor Calcul financiar Recapitulare clasa 9 Ecuatii-Inecuatii 10 Trigonometrie 10
COMUNICARE Administrarea corespondentei Comunicarea Comunicare
Clasa a XII-a HTML PhP Formulare PHP Instructiuni conditionale MySQL Tema 12

 

Construirea interogărilor

 

 

În acest capitol vom exersa metode de creare a interogărilor pe baza unor condiţii impuse de problemă.

click aici

 

 

Operaţii care trebuie cunoscute

 

-        Creare interogări de selecţie: Din fila Creare , grupul Altceva alegem Proiectare Interogare. Introducem tabelele, câmpurile şi edităm condiţiile în linia Criterii ori în linia Sau.

-        Creare interogări de  actualizare: Din fila Proiectare avem comenzile : Ştergere, Adăugare, Actualizare

-        Creare interogare încrucişată: Din fila Proiectare alegem Tabel încrucişat

 

 

 

 

 

Aplicaţia 1

 

Vom folosi baza de date Scoala de la aplicaţia 1 din partea 4. Aceasta conţinea tabelele cu structurile de mai jos iar legătura era Clase→1,n→Elevi.

 

Tabela  Clase

Denumire câmp

Tip de dată

Dimensiune câmp

Clasa

Text

3

Diriginte

Text

20

Sala

Text

10

profil

Text

35

Tabela  Elevi

Denumire câmp

Tip de dată

Dimensiune câmp

Nr matricol

Numar

Intreg

Nume elev

Text

20

Media

Numar

Simpla precizie, 2 zecimale

Data nasterii

Data/Ora

Data medie

Caminist

Da/Nu

 

Clasa

Text

3

 

Veţi crea următoarele interogări:

a)      Să se afişeze numai elevii din clasa 12A.

b)      Să se afişeze numai elevii din clasa 12B şi care au media mai mare decât 8.50.

c)      Să se afişeze elevii care sunt căminişti sau care au media 10.

d)     Să se afişeze elevii a căror nume începe cu A.

e)      Să se afişeze toate profilurile excluzând profilul servicii.

f)       Afişaţi toţi elevii născuţi între 5/05/1988 şi 6/06/1989.

 

Rezolvare:

 

a)       

1.      Deschidem baza de date Scoala şi din fila Creare , grupul Altceva alegem Proiectare Interogare.

2.      Din fereastra de dialog Afişare tabel vom selecta prin dublu click tabelele ce participă la realizarea interogării, în cazul nostru numai tabela Elevi. Acesta va apărea în partea de sus a ferestrei de construcţie.

3.      Pentru a adăuga câmpurile ce vor forma coloanele interogării avem trei modalităţi:

-        Prin dublu click pe numele câmpului

-        Poziţionăm mouse-ul pe numele câmpului şi prin operaţia de glisare aducem câmpul până în poziţia dorită, pe linia Câmp

-        Dăm click cu mouse-ul în celula de pe linia Câmp şi de la săgeata de derulare selectă câmpul

4.      Poziţionăm cursorul pe linia Criterii de pe coloana Clasa şi scriem valoarea căutată , adică 12A.

5.      Rulăm interogarea apăsând pe comanda   din stânga filei Proiectare. Vor fi afişate numai datele ce corespund valorii „12A”.

6.      Salvăm interogarea cu un nume sugestiv, de exemplu „elevii din 12A”.

 

b)

1.      Repetăm primii 4 paşi de la punctul a.

2.      Pe linia Criterii vom trece condiţiile pe aceeaşi linie deoarece sunt legate prin şi:

-        Pe coloana Clasa vom scrie „12B

-        Pe coloana Media >8.50

3.      Rulăm interogarea şi o salvăm sub numele „elevi din 12B cu media peste 8,50 .

 

c)      Parcurgem aceeaşi paşi pentru crearea unei interogări iar la Criterii vom avea ca în figura de mai jos, cu menţiunea că valoarea Da este pe linia Criterii iar valoarea 10 se află pe linia Sau:

 

 

d)     Criteriul ce va trebui impus este: Like "A*" .

e)      Criteriul ce va trebui impus este: Not Like "servicii" .

f)       Criteriul va fi : Between #5/5/1988# And #6/6/1989# .

 

 

 

 

Aplicaţia 2

 

Deschideţi aceeaşi bază de date de mai sus şi proiectaţi o interogare care să afişeze elevii dintr-o clasă introdusă de utilizator la fiecare rulare a interogării şi o alta care va afişa elevii ce au media mai mare decât o valoare introdusă de la tastatură de către utilizator.

 

Rezolvare:

 

Dacă ar fi să reformulăm, enunţul ar suna astfel:

a)      Care sunt elevii din clasa…?

b)       Care sunt elevii cu media mai mare decât….?

 

a)

1.      Deschidem fereastra de dialog pentru a crea interogarea cu parametri.

2.      Adăugăm tabela Elevi şi câmpurile nume_elev şi clasa.

3.      La Criterii vom scrie [care_este_clasa?].

4.      Din fila Proiectare alegem Parametri şi introducem acelaşi text în coloana Parametru fără parantezele drepte. În coloana Tip de date alegem tipul corespunzător coloanei clasa adică text. Apoi OK.

 

 

 

5.      De câte ori rulăm interogarea apare o fereastră de dialog care ne solicită să introducem clasa ce se doreşte a fi afişată.

6.      Este vorba de introducerea parametrului care la fiecare are o valoare diferită, în funcţie de dorinţa utilizatorului. După ce se introduce valoarea apăsăm OK.

 

 

b)

1.      Deschidem fereastra de dialog pentru a crea interogarea cu parametru.

2.      Adăugăm tabela Elevi şi câmpurile nume_elev şi media.

3.      La Criterii vom scrie >[media_mai_mare_decat..].

4.      Deschidem comanda Parametri şi introducem acelaşi text în coloana Parametru. În coloana Tip de date alegem tipul corespunzător coloanei media adică simplă precizie. Apoi OK.

 

 

5.      De câte ori rulăm interogarea apare o fereastră de dialog care ne solicită să introducem clasa ce se doreşte a fi afişată. După ce se introduce valoarea apăsăm OK.

 

 

 

 

Aplicaţia 3

 

În baza de date Scoala veţi mai crea o tabelă cu structura:

a)      Tabela Absente cu câmpurile: nr_matricol, abs_mot, abs_nemot.

b)      Proiectaţi o relaţie între Elevi→1,1→Absente.

c)      Să se afişeze pentru fiecare elev totalul absenţelor (motivate+nemotivate).

d)     Să se calculeze şi să se afişeze pentru fiecare elev vârsta.

 

Rezolvare:

 

 

Punctele a şi b se vor rezolva în acelaşi mod ca la problemele precedente.

c)      Cerinţa se va rezolva printr-o interogare în care o coloană va conţine un calcul matematic, astfel:

1.      Deschidem fereastra pentru interogare şi introducem tabelele Absente şi Elevi.

2.      Introducem câmpurile Nume_elev, abs_mot şi abs_nemot care vor deveni coloane pentru noua interogare.

3.      În următoarea coloană vom scrie Total_absente: [abs_mot]+[abs_nemot] , care reprezintă:

-        Total_absente este numele noii coloane urmat de simbolul 2 puncte „:

-        Urmează numele primei coloane încadrat de paranteze drepte apoi operatorul matematic „+” şi numele celei de-a doua coloane, încadrată şi aceasta de paranteze drepte.

Deci când avem de făcut calcule în care vom face referire la nume de câmpuri acestea se vor încadra între paranteze drepte.

 

 

 

d)      

1.      Vom adăuga numai tabela Elevi pentru a crea interogarea.

2.      Coloana în care vom efectua calculul va conţine formula:

 Varsta: Year(Date())-Year([data nasterii])

 

 

            Unde:

-        Year(Date()) returnează anul curent deoarece funcţia Year() extrage anul dintr-o dată calendaristică iar funcţia Date() returnează data curentă.

-        Year([data nasterii]) va returna anul naşterii pe aceleaşi principii de calcul prezentate mai sus

 

 

 

 

 

Aplicaţia 4

 

În baza de date Scoala care conţine deja cele trei tabele veţi proiecta următoarele interogări totalizatoare:

a)      Să se calculeze numărul de elevi din fiecare clasă.

b)      Să se calculeze câte absenţe nemotivate sunt de fiecare clasă.

c)      Calculaţi valoarea medie pe clasă a absenţelor motivate.

d)     Aflaţi care este media pe clasă şi care este cea mai mică medie din fiecare clasă.

 

Rezolvare:

 

Pentru rezolvarea următoarelor puncte vom utiliza interogări totalizatoare.

a)

1.      Pentru a putea realiza o numărare corectă va trebui să grupăm elevii pe clase şi apoi să-i numărăm folosindu-ne de funcţia Contor aplicată câmpului Nr matricol .

2.      Deschidem fereastra de construcţie a interogării.

3.      Afişăm tabela Elevi şi introducem câmpurile Clasa şi Nr matricol.

4.      Apelăm comanda din dreapta filei Proiectare.

5.      Pe linia Total, la coloana Clasa alegem opţiunea Grupare după iar la Nr matricol derulăm şi alegem Contor.

6.      În faţa câmpului nr matricol vom introduce o altă denumire, prin aceeaşi metodă de la aplicaţia 3. Scriem noul nume urmat de simbolul ”:” şi numele câmpului căruia îi  aplicăm operaţia matematică    Nr_elevi: nr matricol

 

 

 

b)      

Elevii vor fi grupaţi tot după clase, şi în cadrul fiecărei clase vom însuma toate absenţele nemotivate.

1.      Deci apelăm tabelele Absenţe şi Elevi cu câmpurile aferente: clasa şi abs_nemot.

2.      Pe linia Total vom apela funcţiile Grupare după şi Sumă, ca şi în figura de mai jos:

 

 

3.      În faţa coloanei totalizatoare vom introduce un alt nume Total abs nemot :

 

c)       

Elevii vor fi grupaţi tot după clase, şi în cadrul fiecărei clase vom însuma toate absenţele nemotivate 1.

1.      Deci apelăm tabelele Absenţe şi Elevi cu câmpurile aferente: clasa şi abs_mot.

2.      Pe linia Total vom apela funcţiile Grupare după şi Medie, ca şi în figura de mai jos:

 

 

3.      În faţa coloanei totalizatoare vom introduce un alt nume Media abs mot :

4.      Pentru ca media afişată în coloana a doua să fie numai cu 2 zecimale vom da click dreapta în celula unde am scris Media abs mot… iar din meniul contextual alegem Proprietăţi sau alegem comanda Foaie de proprietăţi din fila Proiectare. La proprietatea Format alegem Fix iar la Zecimale selectăm valoarea 2.

 

d)      

Elevii vor fi grupaţi tot după clase, şi în cadrul fiecărei clase vom însuma toate absenţele nemotivate 1.

1.      Deci apelăm tabela Elevi cu câmpurile aferente: clasa, media şi media.

2.      Pe linia Total vom apela funcţiile Grupare după, Medie şi Min, ca şi în figura de mai jos:

 

 

 

 

 

Aplicaţia 5

 

În baza de date Scoala veţi proiecta următoarele interogări de actualizare:

a)      Să se şteargă toţi elevii clasa 12E.

b)      Toţi elevii de la profil „turism” vor fi transferaţi la profilul „intensiv engleza”.

c)      Creaţi o tabelă nouă cu numele Caministi ce va conţine numai elevii care stau la cămin, cu numele şi clasa.

 

Rezolvare:

 

a)       

Avem de conceput o interogare de ştergere.

1.      Introducem tabela Elevi şi câmpul clasa.

2.      Din fila Proiectare alegem comanda Ştergere din grupul Tip interogare.

3.      Pe linia nou apărută Ştergere lăsăm funcţia implicit aleasă de program Unde.

4.      Pe linia Criterii vom edita valoarea care se va şterge: „12E”.

5.      Atunci când rulăm interogarea vom fi întrebaţi dacă suntem siguri de ştergere şi apăsăm pe Yes (Da).

6.      Efectul ştergerii se poate observa în tabela Elevi, unde nu mai există nici un elev în clasa 12E.

 

 

 

b)      

Avem de conceput o interogare de corecţie.

1.      Introducem tabela Clase şi câmpul profil.

2.      Din fila Proiectare alegem tip de interogare Actualizare .

3.      Pe linia nou apărută Actualizare la introducem valoarea nouă intensiv engleza.

4.      Pe linia Criterii vom edita valoarea care se va modifica: „turism”.

5.      Atunci când rulăm interogarea vom fi întrebaţi dacă suntem siguri de actualizare şi apăsăm pe Yes (Da).

6.      Efectul actualizării îl vom observa în tabela Clase. Nu mai avem profil turism deoarece acesta s-a transformat în intensiv engleza.

 

 

 

c)       

Avem de editat o interogare da adăugare.

1.      Vom crea o tabelă nouă cu numele Caministi ce conţine câmpurile nume elev (text) şi sta_la_camin (da/nu).

2.      Deschidem fereastra specifică interogărilor şi selectăm tabela Elevi din care vom apela numai câmpurile nume elev şi caminist.

3.      La Criterii, pe coloana caminist vom scrie Da.

4.      Din fila Proiectare alegem interogarea Adăugare care va avea ca efect apariţia liniei Adăugare la.

5.      Pe această linie vom alege câmpurile corespunzătoare din tabela nou creată Caministi, în care se vor face adăugările.

6.      Când rulăm interogarea vom fi întrebaţi dacă suntem siguri pe adăugarea făcută. Alegem Yes şi deschidem tabela Caministi pentru a urmări efectul (vezi figura de  mai jos).

 

 

 

Observaţie

De câte ori veţi da dublu click pe o interogare de ştergere, actualizare sau adăugare aceasta va produce efectul scontat. Adică cea de ştergere va şterge datele pentru care a fost creată, cea de actualizare va tot modifica datele iar cea de adăugare va adăuga de fiecare dată aceleaşi date.

 

 

 

 

 

Aplicaţia 6

 

În baza de date Scoala veţi proiecta următoarele interogări încrucişate:

a)      Care este numărul de elevi din fiecare clasă cu aceeaşi medie.

b)      Câţi elevi din fiecare clasă sunt căminişti sau necăminişti?

 

Rezolvare:

 

Acest tip de interogări seamănă cu tabele pivot din Excel.

a)      Datele trebuie grupate pe rând după câmpul clasa şi apoi după câmpul media iar numerotarea o vom efectua după câmpul nr_matricol.

1.      Deschidem interogarea şi adăugăm tabela Elevi.

2.      Introducem câmpurile media, clasa şi nr matricol.

3.      Din fila Creare alegem Expert interogare şi apoi Expert interogare de tip tabel încrucişat.

4.      În linia Tabel încrucişat care apare alegem pe rând: Antet rând câmpul media, Titlu coloană va fi câmpul clasa şi Valoare va fi câmpul Nr matricol la care aplicăm funcţia Numărare

 

 

 

b)     Datele trebuie grupate pe rând după câmpul clasa şi apoi după câmpul caminist  iar numerotarea o vom efectua după câmpul nr_matricol.

1.      Deschidem interogarea şi adăugăm tabela Elevi.

2.      Introducem câmpurile clasa, caminist  şi nr matricol.

3.      Din fila Creare alegem Expert interogare şi apoi Expert interogare de tip tabel încrucişat.

4.      În linia Tabel încrucişat care apare alegem pe rând: Antet rând pentru câmpul clasa, Titlu coloană pentru căminist şi Valoare la nr matricol cu funcţia Numărare (Contor).

 

 

 

 

 

 

 

Aplicaţia 7

 

În baza de date Scoala, în tabela Absente veţi introduce încă o coloană cu numele nota_purtare pe care o veţi popula cu note. Veţi proiecta o interogare care va afişa elevii promovaţi sau repetenţi în funcţie de nota primită la purtare.

 

Rezolvare:

 

Fiind vorba de o discuţie o vom efectua cu funcţia IIf care are aceeaşi sintaxă ca şi cea din Excel.

1.      Deschidem interogarea în care introducem cele două tabele Absente şi Elevi.

2.      Selectăm câmpurile nume elev şi nota_purtare.

3.      Adăugăm noua coloană cerută căreia îi dăm numele Situaţia.

Situatia: IIf([nota_purtare]>5,"promovat","repetent")