Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateC
C sharpCalculatoareCorel drawDot netExcelFox pro
FrontpageHardwareHtmlInternetJavaLinux
MatlabMs dosPascalPhpPower pointRetele calculatoare
SqlTutorialsWebdesignWindowsWordXml

Gestionarea informatiilor referitoare la o colectie de DVD-uri cu filme

calculatoare



+ Font mai mare | - Font mai mic



Cuprins

1. Specificarea problemei..................... 2

2. Analiza problemei..................... .3

2.1. Modelul Entitate - Asociere................ 3



2.2. Stabilirea Cardinalitatilor.................. 4

2.3. Modelul Relational....................5

2.4. Specificatii de implementare.................6

3. Implementarea problemei..................8

3.1. Crearea tabelelor.....................8

3.2. Inserarea datelor in table..................9

4. Interogare..........................10

5. Formulare..........................11

6. Rapoarte.........................11

SPECIFICAREA PROBLEMEI

Aplicatia prezinta gestionarea informatiilor referitoare la o colectie de DVD-uri cu filme.

Avem nevoie de o baza de date pentru a tine evidenta DVD-urilor pe care le detin, precum si a persoanelor care le-au imprumutat s-au care le vor imprumuta.

Un DVD se incadreaza intr-un anumit GEN care contine:

id_gen

categoria

DVD-ul se identifica prin:

id_dvd

regizor

titlul

an_aparitie

PERSOANA va fi identificata prin urmatoarele caracteristici:

id_persoana

nume

prenume

adresa

telefon

O persoana poate sa fie proprietarul mai multor DVD-uri si in acelasi timp sa imprumute DVD-uri de la alti proprietari.

Fiecare proprietar are DVD-uri diferite fata de ceilalti proprietari si nu exista dubluri. De asemenea persoana poate fi doar client, adica doar sa imprumute DVD-uri nu sa le si detina.

O persoana poate imprumuta DVD-uri de genuri diferite si un DVD poate fi imprumutat de mai multe persoane in timp.Un

DVD poate apartine unui singur gen.Un DVD are acelasi titlu ca si titlul filmului.Un film intra pe un DVD.

Se cere:

sa se afiseze, regizorul, titlul, categoria din care face parte DVD;

sa se afiseze DVD-urile care apartin fiecarui proprietar, ordonate dupa titlu;

sa se afiseze care sunt persoanele care au imprumutat DVD-ul cu un anumit titlu si la ce data;

sa se afiseze pentru fiecare proprietar titlul filmului ce a fost imprumutat de cele mai putin si multe ori;

sa se afiseze id_dvd, titlul filmului, care nu au fost imprumutate;

ANALIZA PROBLEMEI

2.1. MODELUL ENTITATE - ASOCIERE

Pentru a realiza baza de date astfel incat sa satisfaca cerintele familiei, vom avea 3 clase de entitati si 3 clase de asociere.

Cele 3 clase de entitati vor fi urmatoarele:

GEN cu 2 atribute:

id_gen care va fi cheie primara (PK) pentru entitatea GEN;

categoria care va fi numele genului;

PERSOANA cu 5 atribute:

id_persoana care va fi cheie primara (PK) pentru entitatea PERSOANA;

nume - numele persoanei;

prenume - prenumele persoanei;

adresa - adresa domiciliului persoanei;

telefon - reprezinta telefonul persoanei;

DVD cu 4 atribute:

id_dvd care va fi cheie primara (PK) pentru entitatea DVD;

regizor care va fi regizorul filmului de pe DVD;

titlul care va fi titlul filmului;

an_aparitie care va reprezenta anul de aparitie al filmului;

Cele 3 clase de asociere vor fi urmatoarele:

INCADRARE - intre GEN si DVD. Clasa de asociere incadrare nu are atribute proprii;

IMPRUMUTARE - intre DVD si PERSOANA. Clasa de asociere imprumutare are ca atribute: nr comanda si data (=data imprumutarii DVD-ului);

PROPRIETATE - intre DVD si PERSOANA. Clasa de asociere proprietate nu are atribute proprii;

2.2. STABILIREA CARDINALITATILOR

1. In cazul asocierii INCADRARE:

- Un gen poate sa contina mai multe DVD-uri => card.max = n.

- Un gen trebuie sa contina 0 DVD-uri => card.min = 0.

- Un DVD poate sa apartina unui singur gen => card.max = 1.

- Un DVD trebuie sa apartina unui gen => card.min = 1.

2. In cazul asocierii IMPRUMUTARE:

- Un DVD poate fi imprumutat la mai multe persoane => card.max = n.

- Un DVD trebuie imprumutat la 0 persoane => card.min = 0.

- O persoana poate sa imprumute mai multe DVD-uri => card.max = n.

- O persoana trebuie sa imprumute 0 DVD-uri => card.min = 0.

3. In cazul asocierii PROPRIETATE:

- Un DVD poate sa apartina la o singura persoana => card.max = 1.

- Un DVD trebuie sa apartina unei persoane => card.min = 1.

- O persoana poate sa detina mai multe DVD-uri => card.max = n.

- O persoana trebuie sa detina 0 DVD-uri => card.min = 0.

2.3. MODELUL RELATIONAL

Pentru fiecare clasa de entitati se construieste cate o tabela cu acelasi nume cu al clasei de entitati si aceeasi cheie primara. Deci se vor construi pentru inceput tabelele: GEN, DVD, PERSOANA cu atributele mentionate mai sus.

GEN - DVD:

Intre aceste 2 tabele clasa de asociere este INCADRARE si nu are atribute proprii.

In acest caz nu se creeaza o tabela noua pentru relatia de asociere, dar migreaza in entitatea cu cardinalitate maxima 1 toate cheile primare (PK) din celelalte clase de entitati si acestea devin chei straine (FK).

In cazul nostru clasa de entitati DVD are cardinalitatea maxima 1, deci primeste intre atributele sale, ca cheie straina, cheia primara id_gen din clasa de entitati GEN cu care se afla in relatie. Astfel vom avea tabelele:

GEN (id_gen (PK), categoria)

DVD (id_dvd (PK), regizor, titlul, an_aparitie, id_gen (FK))

DVD - PERSOANA:

Intre aceste 2 tabele exista 2 clase de asociere si anume:

a)      IMPRUMUTARE

b)      PROPRIETATE

a)      Pentru clasa de asociere IMPRUMUTARE care are atributul propriu Nr comenzii si data

In acest caz se creeaza o noua tabela care va avea acelasi nume cu cel al clasei de asociere, iar atributele tabelei vor fi cele initiale + cheile primare ale tuturor entitatilor implicate in relatia de asociere care vor deveni in aceasta noua tabela chei straine.

Astfel vom avea tabelele:

DVD (id_dvd (PK), regizor, titlul, an_aparitie,)

PERSOANA (id_persoana (PK), nume, prenume, adresa, telefon)

IMPRUMUTARE (nr comanda (PK) id_dvd (FK), id_persoana (FK), data)

b)      Pentru clasa de asociere PROPRIETATE clasa de asociere nu are atribute proprii,

In acest caz clasa de entitati DVD are cardinalitatea maxima 1, deci primeste intre atributele sale ca cheie straina, cheia primara id_persoana din clasa de entitati PERSOANA cu care se afla in relatie. Astfel vom avea tabelele:

DVD (id_dvd (PK), regizor, titlul, an_aparitie, id_persoana (FK))

PERSOANA (id_persoana (PK), nume, prenume, adresa, telefon)

In final vom avea urmatoarele tabele ce reprezinta Modelul Relational:

GEN (id_gen (PK), categoria)

DVD (id_dvd (PK), regizor, titlul, an_aparitie, id_gen (FK), id_persoana (FK))

IMPRUMUTARE (Nr Comanda (PK) id_dvd (FK), id_persoana (FK), data)

PERSOANA (id_persoana (PK), nume, prenume, adresa, telefon)

2.4. SPECIFICATII DE IMPLEMENTARE

Pentru realizarea bazei de date se vor crea urmatoarele 4 tabele:

Tabela GEN cu coloanele:

id_gen valoare numerica de cel mult 2 cifre, cu restrictia ca valoarea sa nu fie null;

categoria sir de caractere de cel mult 20 de cifre, cu restrictia ca valoarea sa nu fie null;

Se mai adauga restrictia de cheie primara pentru id_gen.

G E N

Nume

id_gen

categoria

Tip cheie

PK

Null

Not Null

Not Null

Tip Data

Number

Text

Lungime

2

20

Tabela DVD cu coloanele:

id_dvd valoare numerica de cel mult 4 cifre, cu restrictia ca valoarea sa nu fie null;

regizor sir de caractere de cel mult 30 de caractere, cu restrictia ca valoarea sa nu fie null;

titlul sir de caractere de cel mult 40 de caractere, cu restrictia ca valoarea sa nu fie null;

an_aparitie valoare numerica de cel mult 4 cifre, cu restrictia ca valoarea sa nu fie null;

id_gen valoare numerica de cel mult 2 cifre, cu restrictia ca valoarea sa nu fie null;

id_persoana valoare numerica de cel mult 3 cifre, cu restrictia ca valoarea sa nu fie null;

Se adauga urmatoarele restrictii:

- cheia primara va fi id_dvd;

- cheie straina va fi id_gen care se refera la

id_gen din tabela GEN;

- cheie straina va fi id_persoana care se refera la

id_persoana din tabela PERSOANA;

D V D

Nume

id_dvd

regizor

titlul

an_aparitie

id_gen

id_persoana

Tip cheie

PK

FK

FK

Null

Not Null

Not Null

Not Null

Not Null

Not Null

Not Null

Tip Data

Number

Text

Text

Number

Number

Number

Lungime

4

30

40

4

2

3

Tabela IMPRUMUTARE cu coloanele:

Nr comanda valoare numerica de cel mult 4 cifre, cu restrictia ca valoarea sa nu fie nul

id_dvd valoare numerica de cel mult 4 cifre, cu restrictia ca valoarea sa nu fie null;

id_persoana valoare numerica de cel mult 3 cifre, cu restrictia ca valoarea sa nu fie null;

data de tip Date, cu restrictia ca valoarea sa nu fie null;

Se mai adauga restrictiile de cheie straina pentru id_dvd si id_persoana.

IMPRUMUTARE

Nume

Nr Comanda

id_dvd

id_persoana

data

Tip cheie

PK

FK

FK

Null

Not Null

Not Null

Not Null

Not Null

Tip Data

Number

Number

Number

Date

Lungime

4

4

3

Tabela PERSOANA cu coloanele:

id_persoana valoare numerica de cel mult 3 cifre, cu restrictia ca valoarea sa nu fie null;

nume sir de caractere de cel mult 15 caractere, cu restrictia ca valoarea sa nu fie null;

prenume sir de caractere de cel mult 15 caractere, cu restrictia ca valoarea sa nu fie null;

adresa sir de caractere de cel mult 60 de caractere,

telefon valoare numerica de cel mult 15 cifre;

Se adauga restrictia de cheie primara pentru id_persoana;

PERSOANA

Nume

id_persoana

nume

prenume

adresa

telefon

Tip cheie

PK

Null

Not Null

Not Null

Not Null

Not Null

Not Null

Tip Data

Number

Text

Text

Text

Number

Lungime

3

15

15

60

15

IMPLEMENTAREA PROBLEMEI

S-a creat baza de date utilizand optiunea " New Blank Data Base"

3.1. CREAREA TABELELOR

S-au creat tabelele de date cu optiunea "Create with Design View"

GEN

id_gen

categoria

SF

Actiune

Comedie

Thriller

Drama

Horror

Animatie

Aventura

Fantastic

Romantic

DVD

id_dvd

regizor

Titlu

an_aparitie

id_gen

id_persoana

Steven Spilberg

Jurasic Park

Peter Jackson

The Lord Of The Ring

Walt Becker

Van Wilder

Clint Eastwood

Absolut Power

Woody Allen

Annie Hall

Steven Spilberg

E.T.

Steven Spilberg

A.I.

Tim Burton

Edward Scissorhands

Don Bluth

Anastasia

Peter Chelsom

Serendipity

IMPRUMUTARE

Nr_Comanda

id_dvd

id_persoana

data

PERSOANA

id_persoana

nume

prenume

adresa

Localitatea

telefon

Ardelean

Cosmi

str. Predeal nr. 13

Tg. Mures

Manea

Alexandru

str. Alea Carpati nr. 31

Tg. Mures

Bleoaca

Silviu

str. Cornisa n.r 7

Tg. Mures

Bleoca

Tiberiu

str. Cornisa nr. 7

Tg. Mures

Bleoca

Sorana

str. Cornisa nr. 7

Tg. Mures

Vancu

Diana

str. Sarguintei nr. 25

Tg. Jiu

Rusu

Seban

str. Stramba nr. 12

Brasov

Libeg

Claudiu

str. Stelelor nr. 37

Cluj-Napoca

Stefan

Mihai

str. Bordeni nr. 56

Ploiesti

3.2. INSERAREA DATELOR IN TABELE

Pentru usurarea introducerii datelor in tabele s-au creat formularele :Form DVD , Form Persoana, Form Imprumutare".

Pentru evitarea erorilor s-au introdus proprietatatile "RelationshipType si Enforce

Referential integrity"

QUERIES

Solicitarile create au fot obtinut ecu ajutorul comenzii "Create queries by using design" utilizand in prealabil mai multe selectii;

S-au solicitat urmatoarele informatii ;

a) cele mai vizionate Filme - DVD si Genul Lor in ordinea solicitarilor;

cele mai vizionate

CountOfid_dvd

titlu

categoria

The Lord Of The Ring

Fantastic

Jurasic Park

Aventura

A.I.

SF

Van Wilder

Actiune

Serendipity

Romantic

Edward Scissorhands

Drama

Annie Hall

Comedie

Anastasia

Animatie

cele mai vizionate_Crosstab

titlu

A.I.

SF

Anastasia

Animatie

Annie Hall

Comedie

Edward Scissorhands

Drama

Jurasic Park

Aventura

Serendipity

Romantic

The Lord Of The Ring

Fantastic

Van Wilder

Actiune

b)DVD-urile neimprumutate , cu nume si prenume

DVD Neimprumutate

titlu

categoria

nume

prenume

Absolut Power

Thriller

Bleoaca

Silviu

E.T.

SF

Bleoca

Tiberiu

c)      DVD-urile Imprumutate

Imprumut

id_persoana

Titlu

categoria

data

nume

prenume

Annie Hall

Comedie

Bleoaca

Silviu

The Lord Of The Ring

Fantastic

Bleoca

Sorana

A.I.

SF

Bleoca

Tiberiu

Edward Scissorhands

Drama

Stefan

Mihai

Serendipity

Romantic

Bleoca

Sorana

A.I.

SF

Vancu

Diana

Van Wilder

Actiune

Bleoca

Tiberiu

Jurasic Park

Aventura

Vancu

Diana

Jurasic Park

Aventura

Bleoca

Sorana

Anastasia

Animatie

Ardelean

Cosmi

The Lord Of The Ring

Fantastic

Manea

Alexandru

d)      List aDVD-urilor existente

Lista DVD existente

titlu

categoria

E.T.

SF

A.I.

SF

Van Wilder

Actiune

Annie Hall

Comedie

Absolut Power

Thriller

Edward Scissorhands

Drama

Anastasia

Animatie

Jurasic Park

Aventura

The Lord Of The Ring

Fantastic

Serendipity

Romantic

e)      DVD-uri imprumutate

Imprumut

id_persoana

titlu

categoria

data

nume

prenume

Annie Hall

Comedie

Bleoaca

Silviu

The Lord Of The Ring

Fantastic

Bleoca

Sorana

A.I.

SF

Bleoca

Tiberiu

Edward Scissorhands

Drama

Stefan

Mihai

Serendipity

Romantic

Bleoca

Sorana

A.I.

SF

Vancu

Diana

Van Wilder

Actiune

Bleoca

Tiberiu

Jurasic Park

Aventura

Vancu

Diana

Jurasic Park

Aventura

Bleoca

Sorana

Anastasia

Animatie

Ardelean

Cosmi

The Lord Of The Ring

Fantastic

Manea

Alexandru

f) Proprietarii DVD-urilor

Proprietar

titlu

categoria

nume

prenume

id_persoana

Serendipity

Romantic

Bleoaca

Silviu

A.I.

SF

Bleoaca

Silviu

Absolut Power

Thriller

Bleoaca

Silviu

The Lord Of The Ring

Fantastic

Bleoaca

Silviu

Anastasia

Animatie

Bleoca

Tiberiu

E.T.

SF

Bleoca

Tiberiu

Jurasic Park

Aventura

Bleoca

Tiberiu

Edward Scissorhands

Drama

Bleoca

Sorana

Annie Hall

Comedie

Bleoca

Sorana

Van Wilder

Actiune

Bleoca

Sorana

5. FORMULARE

S-au creat 3 formulare pentru usurarea introducerii datelor: TAB DVD, TAB IMPRUMUTARE, TAB PERSOANA.

6. RAPOARTE

S-au creat 4 rapoarte: "Cele mai vizionate, existente, imprumutate, neimprumutate".



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1754
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved