Proiect BAZE DE DATE PDF

Title Proiect BAZE DE DATE
Course Baze de date Databases
Institution Academia de Studii Economice din București
Pages 38
File Size 2.3 MB
File Type PDF
Total Downloads 461
Total Views 588

Summary

GESTIUNEA UNUI MAGAZIN DE INCALTAMINTE SPORTOBIECTIVUL PROIECTULUI SI DESCRIEREA ACESTUIAScopul proiectului este acela de a gestiona un magazin de incaltamintesport, folosit date folositoare in baza noastra de date avem inregistrateinformatii despre: departamente, angajati, cutiile fiecarei perechi ...


Description

GESTIUNEA UNUI MAGAZIN DE INCALTAMINTE SPORT

1

OBIECTIVUL PROIECTULUI SI DESCRIEREA ACESTUIA Scopul proiectului este acela de a gestiona un magazin de incaltaminte sport, folosit date folositoare.Astfel in baza noastra de date avem inregistrate informatii despre: departamente, angajati, cutiile fiecarei perechi de incaltaminte, modelul fiecarei perechi de incaltaminte si bonurile fiscale, in total existand 5 tabele de date.Pentru fiecare departament se cunosc: cod_d (codul cu care departamentul se identifica), denumirea departamentului, etajul si numarul camerei la care acest departament se poate gasi.Pentru fiecare angajat se cunosc: cod_a (codul cu care angajatul se identifica), cod_d (departamentul din care angajatul face parte), varsta angajatului, numele angajatului si vechimea acestuia in firma.Cum fiecare pereche de incaltaminte prezinta o cutie, pentru aceasta se cunosc: cod_c (codul cu care cutia se identifica), culoarea cutiei si un cod de bare. Pentru modelul fiecarei perechi se cunosc: cod_m (codul cu care modelul respectiv se identifica), cod_c (cutia in care modelul respectiv se gasete), brand-ul, marimea si pretul.Pentru bonul fiscal se cunosc: cod_b (codul unic al bonului fiscal emis), cod_m (codul cu care modelul respectiv perechii vandute se identifica), cod_a (codul angajatului care a vandut perechea, respectiv a emis bonul) si data emiterii bonului fiscal. Un model se gaseste intr-o singura cutie.O cutie contine un singur model. Un angajat lucreaza intr-un singur departament.Un departament are cel putin un angajat. Un angajat emite unul sau mai multe bonuri.Un bon este emis de un singur angajat. Un model de incaltamite sport se gaseste pe unul sau mai multe bonuri.Un bon contine un model de incaltaminte sport.

SCHEMA BAZEI DE DATE 2

3

1. Sa se creeze tabela CUTIE CREATE TABLE "CUTIE" ( "COD_C" NUMBER NOT NULL ENABLE, "CULOARE" VARCHAR2(20) NOT NULL ENABLE, "COD_BARE" NUMBER(10,0) NOT NULL ENABLE, CONSTRAINT "CUTIE_PK" PRIMARY KEY ("COD_C") USING INDEX ENABLE ) /

4

2.Sa se creeze tabela MODEL CREATE TABLE "MODEL" ( "COD_M" NUMBER, "COD_C" NUMBER NOT NULL ENABLE, "BRAND" VARCHAR2(20) NOT NULL ENABLE, "MARIME" VARCHAR2(20) NOT NULL ENABLE, "PRET" NUMBER(4,0) NOT NULL ENABLE, CONSTRAINT "MODEL_PK" PRIMARY KEY ("COD_M") USING INDEX ENABLE ) /

5

3.Sa se creeze tabela DEPARTAMENT CREATE TABLE "DEPARTAMENT" ( "COD_D" NUMBER(3,0) NOT NULL ENABLE, "DENUMIRE" VARCHAR2(20) NOT NULL ENABLE, "ETAJ" NUMBER(2,0) NOT NULL ENABLE, "NR_CAMERA" NUMBER(2,0) NOT NULL ENABLE, CONSTRAINT "DEPARTAMENT_PK" PRIMARY KEY ("COD_D") USING INDEX ENABLE ) /

6

4.Sa se creeze tabela ANGAJAT CREATE TABLE "ANGAJAT" ( "COD_A" NUMBER(3,0) NOT NULL ENABLE, "COD_D" NUMBER(3,0) NOT NULL ENABLE, "VARSTA" NUMBER(2,0) NOT NULL ENABLE, "NUME" VARCHAR2(30) NOT NULL ENABLE, "VECHIME" VARCHAR2(2), CONSTRAINT "ANGAJAT_PK" PRIMARY KEY ("COD_A") USING INDEX ENABLE ) /

7

5.Sa se creeze tabela BON CREATE TABLE "BON" ( "COD_B" NUMBER(3,0) NOT NULL "COD_M" NUMBER(3,0) NOT NULL "COD_A" NUMBER(3,0) NOT NULL "DATA_EMITERE" DATE, CONSTRAINT "BON_PK" PRIMARY USING INDEX ENABLE ) /

ENABLE, ENABLE, ENABLE, KEY ("COD_B")

Structura tabelelor poate fi modificata ulterior, lucru care se realizeaza cu ajutorul comenzii ALTER. 8

In continuare voi da exemple de cateva modificari pe care le-am efectuat asupra tabelelor. 1. In tabela MODEL adaugati restrictia de integritate “verif_marime” astefel incat numerele introduse in campul “marime” sa fie cuprinse intre 40 si 46. ALTER TABLE MODEL ADD CONSTRAINTS verif_marime CHECK (MARIME BETWEEN 40 AND 46);

9

2. Dezactivati restrictia de integritate verif_marime din tabela MODEL . ALTER TABLE MODEL

DISABLE CONSTRAINT verif_marime;

10

3.Pentru tabela MODEL creati constrangerea „MODEL_CON” pentru setarea foreign key-ului cod_c. ALTER TABLE "MODEL" ADD CONSTRAINT "MODEL_CON" FOREIGN KEY ("COD_C") REFERENCES "CUTIE" ("COD_C") ENABLE

11

4. Pentru tabela ANGAJAT creati constrangerea „ANGAJAT_CON” pentru setarea foreign key-ului cod_d.

ALTER TABLE "ANGAJAT" ADD CONSTRAINT "ANGAJAT_CON" FOREIGN KEY ("COD_D") REFERENCES "DEPARTAMENT" ("COD_D") DISABLE

12

5. Pentru tabela BON creati constrangerile „BON_FK” si „BON_FK1” pentru setarea foreign keys cod_m si cod_a.

ALTER TABLE "BON" ADD CONSTRAINT "BON_FK" FOREIGN KEY ("COD_M") REFERENCES "MODEL" ("COD_M") ENABLE / ALTER TABLE "BON" ADD CONSTRAINT "BON_FK1" FOREIGN KEY ("COD_A") REFERENCES "ANGAJAT" ("COD_A") ENABLE /

13

6.Sa se adauge o restrictie de tip NOT NULL pentru atributul „DATA_EMITERE” din tabela BON. ALTER TABLE BON ADD CONSTRAINT data_nn check(DATA_EMITERE IS NOT NULL);

14

Aplicatii folosind comenzi de manipulare a datelor (LMD) 1.Inserati date in tabela CUTIE

15

2.Inserati date in tabela MODEL

16

3.Inserati date in tabela DEPARTAMENT

17

4.Inserati date in tabela ANGAJAT

18

5.Inserati date in tabela BON

19

Actualizari date si interogari variate 1. Modificati tabela CUTIE astfel incat coloana culoare sa fie scrisa doar cu litere mici. UPDATE CUTIE set CULOARE=lower(CULOARE);

INAINTE:

DUPA:

20

2. Sa se mareasca cu 20% pretul perechilor de incaltaminte ce apartin brand-ului NIKE. UPDATE MODEL SET PRET=PRET*1.2 WHERE BRAND='NIKE';

INAINTE:

DUPA:

21

3. Sa se modifice varsta, numele si vechimea angajatului cu cod_a=20 cu varsta, numele si vechimea angajatului cu cod_a=13. UPDATE ANGAJAT SET(VARSTA,NUME,VECHIME)=(SELECT VARSTA,NUME,VECHIME FROM ANGAJAT WHER E COD_A=13) WHERE COD_A=20;

INAINTE:

22

DUPA:

4. Sa se afiseze cu litere mari denumirea departamentelor de la etajul 2. SELECT COD_D, UPPER(DENUMIRE) FROM DEPARTAMENT WHERE ETAJ=2;

5. Afişaţi pretul, brand-ul si marimea modelelor cu pretul mai mare de 400. SELECT PRET,BRAND,MARIME FROM MODEL WHERE PRET>400; 23

6. Să se afişeze data emiterii si codul angajatilor care au emis bonuri fiscale inainte de luna decembrie. SELECT DATA_EMITERE, COD_A FROM BON WHERE EXTRACT(MONTH FROM DATA_EMIT ERE)...


Similar Free PDFs