Sunteți pe pagina 1din 10

MINISTERUL EDUCAIEI TINERETULUI SI SPORTULUI AL REPUBLICII MOLDOVA

UNIVERSITATEA TEHNIC A MOLDOVEI

Baze de date
Lucrarea Nr3

TEMA: Crearea i interogarea bazelor de date folosind limbajul SQL

A efectuat

studentul grupei ME-081

A verificat

Conf. univ.,dr.
Lupan Oleg

Chisinau 2010
Scopul lucrarii: De a familiariza studenii cu principalele comenzi ale limbajului SQL. De a
obine deprinderi de lucru cu comenzile de creare, interogare, modificare i tergere ale limbajului de
interogare SQL, elabornd o baz de date DECANAT .

Tema 1. Lucrarea se va efectua n sistemul de gestionare a bazelor de date MySQL-Front, pentru


executarea unei comenzi se tasteaz F9, pentru a vedea rezultatele se tasteaz F5 sau se apas pe butonul
din dreapta a mouse-lui i din meniul care apare se alege comanda Refresh. n continuare se va crea cu
ajutorul limbajului SQL o baz de date cu denumirea DECANAT compus din cteva tabele n care vom
introduce date, apoi pe baza acestor date se va efectua interogri.
1. Se va crearea baza de date DECANAT
CREATE DATABASE decanat;
Dup executarea acestei instruciuni i dup tastarea tastei F5 observm n partea stng a ecranului
apariia unei baze de date noi cu denumirea DECANAT (vezi fig. 3.1) .
2. Crearea tabelelor.
n continuare este prezentat listingul instruciunilor cu ajutorul crora se vor crea tabelele n baza de date
DECANAT.

Fig. 3.1. Crearea bazei de date DECANAT.


Crearea tabelului STUDENTI:

CREATE TABLE studenti


( cod_st char(6),
grupa char(4),
nume char(15),
prenume char(15),
sex char(1),
anul int,
data_nasterii date);
Crearea tabelului SESIA:
CREATE TABLE sesia
(cod_st char(6), cod_prof int, cod_examen char(20),
nota int, data_examen date);
Crearea tabelului PROFESORI:
CREATE TABLE profesori
(cod_prof int, nume char(15), prenume char(15),
catedra char(30), data_nasterii date, functia char(20),
grad_didactic char(20),adresa char(20), telefon char(10));
Crearea tabelului EXAMEN:
CREATE TABLE examen
(cod_examen char(20), examen char(20));
Crearea tabelului CAMIN:
CREATE TABLE camin
(cod_st char(6), camin char(20), camera char(20));
Crearea tabelului BURSA:
CREATE TABLE bursa
(cod_st char(6), septembrie int, octombrie int, noiembrie int, decembrie
int, ianuarie int,
februarie int, martie int, aprilie int, mai int);

Vor fi prezentate tabelele create n urma executrilor instruciunilor de mai sus(vezi fig.3.2. ).

Fig. 3.2. Tabelele bazei de date


Adugarea unei noi coloane ntr-o tabel

ALTER TABLE profesori ADD tel_domiciliu int;

Adugarea cheii primare.


Nota: Coloana la care se va aduga cheia primar trebuie sa fie de tipul NOT NULL (vezi fig.3.3).
ALTER TABLE profesori ADD PRIMARY KEY(cod_prof)

Fig.3.3. Setarea cheii primare

3.Adugarea datelor n tabele.


Adugarea datelor n tabele se vor realiza folosind instruciunea INSERT INTO VALUES. Mai jos sunt
prezentate listingul instruciunilor pentru adugarea datelor n tabelul EXAMEN i STUDENTI.
Adugarea datelor in tabelul examen:
INSERT
INSERT
INSERT
INSERT
INSERT
INSERT
INSERT
INSERT

INTO
INTO
INTO
INTO
INTO
INTO
INTO
INTO

examen VALUES('mat','matematica');
examen VALUES ('fiz','fizica');
examen VALUES ('mce','mater. comp. elec');
examen VALUES ('ah','arhitectura
calculatorului');
examen VALUES ('a_s','analiza structurala');
examen VALUES ('bd','baze de date');
examen VALUES ('el','electronica');
examen VALUES ('et_prof','etica profesionala');

Adugarea datelor n tabelul studeni(vezi ex. fig.3.4)


INSERT
INTO
studenti
('4581','im00','porumbac','iurie','m',2,1972-04-14);
INSERT
INTO
studenti
('2145','im00','balica','maria','m',2,1985-25-5);

VALUES
VALUES

Fig. 3.4. Tabelul EXAMEN ,STUDENTI completat


4. Eliminarea unui table:
DROP TABLE

sesia;

Aceast expresie terge din baza de date tabelul SESIA, n fig.3.5 observm c tabelul SESIA lipsete.
Fig. 3.5. Eliminarea unui tabel.

Fig. 3.5.Eliminarea tabelului SESIA

5. Interogarea bazei de date create.

Dup crearea i completarea tabelelor din baza de date DECANAT se vor formula interogri la baza de
date creat. Mai jos sunt expuse cteva condiii de interogare, listingul expresiilor i rezultatul ateptat al
afirii.
Afiarea listelor studientilor.(vezi fig.3.6.)
SELECT * FROM studenti;

Fig.3.6. Rezultatul afisarii interogrii


Afiarea anumitor coloane din tabel:
De exemplu s se afieze numele, prenumele i grupa studenilor (fig.3.7).
SELECT nume, prenume, grupa FROM studenti;

Fig.3.7. Afiarea anumitor coloane din tabel.

Selectarea datelor respectnd anumite condiii folosind clauza WHERE.


S se afieze lista studenilor din grupa fa01 (vezi fig.3.8.):

SELECT nume, prenume FROM studenti WHERE grupa='im00';

Fig.3.8. Lista studenilor din grupa im00.


S se afieze lista studenilor a cror nume ncep cu litera B(vezi fig.3.9.):
SELECT * FROM studenti WHERE nume like 'p%';

Fig.3.9. Lista studenilor a cror nume ncep cu litera B


S se afieze datele personale ale unui student concret(vezi fig.3.10.):
SELECT * FROM studenti WHERE nume='balica' AND

prenume='maria';

Fig.3.10. Datele personale ale unui student


Afiarea numelor, prenumelor i grupa studenilor care sunt cazai n cminul 02(vezi fig.3.11.):
SELECT nume, prenume

FROM studenti, camin

WHERE studenti.cod_st=camin.cod_st and camin.camin='02';

Fig.3.11. Afiarea numelor, prenumelor studenilor ce snt cazai n cminul 02

De afiat numrul total de studeni din grupa ta02 folosind funcia COUNT(vezi fig.3.12.):
SELECT count(grupa) FROM studenti WHERE grupa='ta02';

Fig.3.12. Numrul total de studeni din grupa ta02


Aranjarea n ordine alfabetic a numelor studenilor dintr-o grup folosind clauza ORDER BY(vezi
fig.3.13.):

SELECT nume, prenume, grupa FROM studenti WHERE grupa='im00' order by


nume ;

Fig.3.13. Aranjarea n ordine alfabetic a numelor studenilor dintr-o grup


6.Corectarea datelor folosind funcia UPDATE (vezi fig.3.14.):
UPDATE camin
SET cod_st="1250"
WHERE cod_st="1248";

Fig.3.14. Corectarea datelor.


7. Se va realiza tergerea unei nregistrri dintr-un tabel folosind clauza DELETE:
De eliminat din list studentul care are codul 1698(vezi fig.3.15.):.
DELETE

FROM studenti WHERE cod_st="4581";

Fig.3.15. Eliminarea unei inscrieri din tabel.

Tema 2. De a crea baza de date Automobile, alctuind tabele care conin urmtoarele date despre
automobile:
Marca automobilului
Numrul automobilului
Numele i prenumele proprietarului
Numrul motorului
Firma unde a fost procurat automobilul
Data procurrii
Data nregistrrii
Preul automobilului
Adresa proprietarului
Numrul de Km parcuri
Numrul cardului
Denumirea Bncii
Data efecturii reviziei tehnice.

Dup necesitate acest list se poate extinde.

Pe baza tabelelor create efectuai interogri asupra acestora:


Lista proprietarilor care au procurat automobile mai devreme de anul 1995

Lista proprietarilor i marca automobilului, la care au mai puin de 10000 de Km parcuri.

De sortat dup preuri n ordine cresctoare i de afiat marca- numele prenumele-preul

De adugat un proprietar nou

Lista proprietarilor i marca automobilului care au trecut revizia tehnic nu mai trziu de
01.02.2006

Lista proprietarilor i marca automobilului preul crora nu depete 3000$

Lista proprietarilor i adresa care au procurat automobilul n firma i pe data indicat

De eliminat din list proprietarii care n-au trecut revizia tehnic pn la o dat anumit

Concluzii:
In aceasta lucrare am creat baza de date decanat si automobile efectuind unele instructiune cum ar fi
selectarea din baza de date a datelor dupa anumite cerinte, am ters,am adugat noi coloane n SQL.

S-ar putea să vă placă și