jocurile olimpice de iarna
DESCRIPTION
Atestat OracleTRANSCRIPT
Jocurile Olimpice de iarnă
-Lucrare practică de atestat la informatică-
Elev: Caciuriac Alexandra Cătălina
Petcaş Iulia
Profesor coordonator: Coman Alina
Liceul teoretic „Mihail Sadoveanu”
Mai 2010
Cuprins:
1) Introducere (Oracle)
2) Tema proiectului
3) Motivaţia acceptării proiectului
4) Descrierea proiectului
5) Referinţe
6) Detalii de programare
a) diagrama iniţială
b) diagrama finală
c) explicarea diagramei
7) Modelul fizic
8) Aplicaţii
1) Introducere (Oracle)
Calculatoarele personale au aparut din necesitatea stocarii si
prelucrarii cat mai rapide a informaţiilor. Evolutia tehnicii de calcul
a dus la o crestere substantiala a capacitatii de memorare şi a
vitezei de prelucrare a datelor. Tinând cont de acesti doi
parametrii, problemele rezolvate cu ajutorul calculatorului pot fi
clasificate în:
probleme care implica prelucrari reduse asupra unui volum
mare de date;
probleme care implica un volum mediu de prelucrari
asupra unui volum mediu de date;
probleme care implica un volum mare de prelucrari asupra
unui volum mic de date;
Sistemele de gestiune a bazelor de date reprezinta sisteme
informatice specializate in stocarea si prelucrarea unui volum
mare de date, deci in rezolvarea problemelor de primul tip.
Organizarea datelor ocupa un loc important in proiectarea
sistemelor informatice, de aceasta depinzand eficienta sistemului
informatic. Organizarea datelor presupune:
definirea, structurarea, ordonarea si gruparea datelor in
colectii omogene de date ;
stabilirea legaturilor (relatiilor) intre date, între
elementele unei colectii de date, respectiv între colectii de date;
reprezentarea datelor pe un suport informational
prelucrabil intr-un sistem de calcul.
Pe lângă cerintele legate de timpul de acces la date, de
spatiul de memorie, organizarea datelor urmareste realizarea
unicitatii datelor.
Conceptele de baza a Bazelor de date:
o entitate
o atribut
o valoare
Aceste trei concepte sunt legate între ele. Prin entitate se
intelege un obiect concret sau abstract reprezentat prin
proprietatile sale. Orice proprietate a unui obiect poate fi
exprimata printr-o pereche de tipuri atribut-valoare. Prin urmare,
entitatile se pot exprima printr-o multime de perechi.
Un exemplu de entitate : (persoana /nume: Popescu, varsta:
25, adresa...).
Multimea unor atribute se poate uneori asocia mai multor
entităţi. Astfel atributele nume, varsta din exemplul anterior pot
caracteriza in general orice persoana, deci atributul
caracterizeaza nu doar o entitate, ci poate caracteriza o clasă de
entităti numita uneori entitate grup. Elementele unor entitati grup
cu aceleasi atribute sunt de acelasi tip, de aici denumirea de tip
de entitati pentru clase de entitati.
Notiunea de atribut este cunoscută şi sub denumirea de camp
sau caracteristică. Atributul este caracterizat de natura valorii
sale. Astfel, daca de exemplu valoarea sa este numerica, atributul
are tipul numeric.
Un alt concept este cel de data. Data reprezinta un model de
organizare a informatiei. O data indivizibila in raport cu informatia
pe care o reprezinta, dar si in raport cu modul de prelucrare se
numeşte data elementara. Mai multe date elementare pot forma o
dată compusa. Data poate fi definita din punct de vedere logic
prin identificator, atribut şi valoare. Din punct de vedere fizic, datei
îi corespunde o zona de memorie de o anumita marime, situata
la o adresa absoluta.
Conceptul de baze de date a aparut in anul 1969, cu ocazia
prezentarii primului raport CODASYL într-o conferinta pe
probleme de limbaje de gestiune a datelor. Ideea principală
constă în existenţa unui fişier de descriere globală a datelor.
Conceptul a fost ulterior dezvoltat şi s-a ajuns la următoarele
tipuri de baze de date :
Baze de date reţea (distribuite)
Baze de date relaţionale
Baze de date orientate pe obiect
În esenţă, conceptul de bază de date se defineşte ca una sau
mai multe colecţii de date în interdependenţă, împreună cu
descrierea datelor şi a relaţiilor dintre ele. O bază de date trebuie
să îndeplinească următoarele condiţii:
a) Să asigure o interdependenţă sporită a datelor faţă de
program şi invers
b) Conceperea structurii bazei de date trebuie să se facă
astfel încât să asigure informaţii necesare şi suficiente pentru
cerinţele de informare şi decizie
c) Să asigure o redundanţă minimă (redundanţă = ceva
care se repetă)
d) Să permită accesul rapid la informaţiile stocate în baza
de date.
Bazele de date sunt extrem de variate. Arhitectura bazelor de
date evidenţiază structura acestora şi este standardizată.
Arhitectura generală cuprinde următoarele elemente:
baza de date propriu-zisă, în care se memorează colecţia
de date
sistemul de gestiune a bazei de date, acesta fiind un
ansamblu de programe care realizează gestiunea şi prelucrarea
complexă a datelor
un dicţionar al bazei de date (metabaza de date) care
conţine informaţii despre date, structura acestora, elemente de
descriere a semanticii, etc.
2) Tema proiectului
Realizarea unei baze date pentru Jocurile Olimpice de iarna,
care prezinta toate sporturile din aceasta competitie precum si
probele la care sunt supusi sportivii. Prezente sunt si listele de
concurs impreuna cu medaliile obtinute in cadrul acestei
competitii cat si rezultatele anti-doping.
3) Motivaţia acceptării proiectului
Fiind doua iubitoare de sport, ne-am dat seama ca unele
dintre competitiile mari, cum ar fi Jocurile Olimpice (atat de iarna
cat si de vara) necesita o baza de date pentru a pune la punct
toate detaliile : de la sporturi la probe, de la sportivi la medalii si la
testele anti-doping pe care le fac. Aplicatia creaza o serie de
rapoarte si diagrame cum ar fi raportul medaliilor sau diagrama cu
toate sporturile.
Fiind un intreg circuit, crearea acestei baze de date nu a fost
deloc usoara, si tocmai acesta a fost unul dintre motivele alegerii
acestei teme.
4) Descrierea proiectului
Jocurile Olimpice de iarnă reprezintă un eveniment sportiv
care se desfăşoară o dată la patru ani. Primele jocuri olimpice de
iarnă au avut loc în 1924 în Franţa la Chamonix. Până în 1992,
jocurile s-au desfăşurat în aceiaşi ani ca şi jocurile olimpice de
vară. Din anul 1994, ele au loc tot la patru ani dar decalate cu doi
ani faţă de jocurile de vară.
Lista Jocurilor Olimpice de Iarna:1924 Prima ediţie a Jocurilor Olimpice Chamonix, Franţa1928 A II-a ediţie a Jocurilor Olimpice St. Moritz, Elveţia1932 A III-a ediţie a Jocurilor Olimpice Lake Placid, New York, Statele Unite1936 A IV-a ediţie a Jocurilor Olimpice Garmisch-Partenkirchen, Germania1948 A V-a ediţie a Jocurilor Olimpice St. Moritz, Elveţia1952 A VI-a ediţie a Jocurilor Olimpice Oslo, Norvegia1956 A VII-a ediţie a Jocurilor Olimpice Cortina d'Ampezzo, Italia1960 A VIII-a ediţie a Jocurilor Olimpice Squaw Valley, California, Statele Unite1964 A IX-a ediţie a Jocurilor Olimpice Innsbruck, Austria1968 A X-a ediţie a Jocurilor Olimpice Grenoble, Franţa1972 A XI-a ediţie a Jocurilor Olimpice Sapporo, Japonia1976 A XII-a ediţie a Jocurilor Olimpice Innsbruck, Austria1980 A XIII-a ediţie a Jocurilor Olimpice Lake Placid, New York, Statele Unite
1984 A XIV-a ediţie a Jocurilor OlimpiceSarajevo, Iugoslavia (acum Bosnia şi Herzegovina)
1988 A XV-a ediţie a Jocurilor Olimpice Calgary, Alberta, Canada1992 A XVI-a ediţie a Jocurilor Olimpice Albertville, Franţa1994 A XVII-a ediţie a Jocurilor Olimpice Lillehammer, Norvegia
1998 A XVIII-a ediţie a Jocurilor Olimpice
Nagano, Japonia
2002 A XIX-a ediţie a Jocurilor Olimpice Salt Lake City, Utah, Statele Unite2006 A XX-a ediţie a Jocurilor Olimpice Torino, Italia2010 A XXI-a ediţie a Jocurilor Olimpice Torino, Italia2014 A XXII-a ediţie a Jocurilor Olimpice Soci, Rusia
5) Referinţe
Domnul Michaëlle Jean care este guvernatorul Canadei si
totodata este cel care a deschis ceremonia, tinuta pe Stadionul
BC Place, a avut amabilitatea de a răspunde la câteva întrebări
legate de acest concurs. Multe dintre informaţiile de care aveam
nevoie le-am obţinut de la precedentele Jocuri Olimpice, astfel
încât interviul s-a limitat numai la câteva întrebări pentru a ne
putea completa bagajul de informaţii:
o Vă rugăm să precizaţi datele necesare unei bune
desfăşurări ale acestei activităţi.
Trebuie sa avem acces la toate datele privind probele,
cum ar fi ora la care se desfasoara fiecare proba si cati
participanti are, sa tinem evidenta sportivilor si a
probelor la care participa. Totodata, trebuie sa stim si ce
sportiv a ajuns pe podium si pe ce loc s-a clasat.
o Este posibil ca un sportiv sa participe la mai multe
probe ?
Bineinteles. Aceasta este alegerea fiecaruia. Daca un
sportiv este talentat la patinaj artistic, dar formeaza o
echipa grozava si la bob, regulamentul nu-l poate
impiedica sa se inscrie la mai multe discipline.
o Cat despre testul anti-doping, de cate ori se face ?
Testul anti-doping este elementul cheie al unei medalii.
Toti ocupantii podiumului trebuie sa faca testul anti-
doping. De regula se face o singura data numindu-se
proba A, dar, daca iese pozitiv, se va recolta si proba B
pentru a fi siguri de rezultat. Insa exista cazuri in care
testul anti-doping se face si altor sportivi, indiferent de
locul ocupat.
o Ce facilităţi doriţi să vă ofere aplicaţia ?
Evidenta sportivilor si a medaliilor obtinute, evidenta
rezultatelor testelor anti-doping pentru a stii cu exactitate
daca medaliile se revendica sau raman la sportivi,
precum si recordurile care se stabilesc la diferite probe
de concurs.
o Am inteles perfect. Va multumesc pentru timpul acordat,
si speram sa va satisfaca data de baze pe care o vom
proiecta.
Cu placere. Astept cu nerabdare sa vad proiectul
terminat.
6) Detalii de programare
a) Diagrama iniţială
Diagrama iniţială conţine entităţile cele mai importante şi
relaţiile primare dintre acestea. În aceasta apar anumite erori care
vor fi rezolvate în diagrama finală. Acestea sunt:
relaţii M-M;
relaţii barate;
aspecte referitoare la regulile afacerii.
In urma realizarii acestei diagrame, se constata existenta a
mai multor relatii many-to-many :
intre entitatiile PROBĂ-SPORTIV, deoarece un
SPORTIV poate participa la mai multe PROBE, iar la o
PROBA se inscriu mai multi SPORTIVI ;
SPORTSPORT
# id
*nume
SPORTSPORT
# id
*nume
PROBĂPROBĂ
# id
* nume
* ora
* recordul_probei
⁰ arbitrii
PROBĂPROBĂ
# id
* nume
* ora
* recordul_probei
⁰ arbitrii
SPORTIVSPORTIV
# nr_concurent
* nume
* prenume
* data_nașterii
* tara
⁰ personal_best
SPORTIVSPORTIV
# nr_concurent
* nume
* prenume
* data_nașterii
* tara
⁰ personal_best
TEST_ANTIDOPINTEST_ANTIDOPINGG# id
TEST_ANTIDOPINTEST_ANTIDOPINGG# id
GHEAȚGHEAȚĂĂ
GHEAȚGHEAȚĂĂ
ZĂPADZĂPADĂĂ
ZĂPADZĂPADĂĂ
intre entitatile SPORTIV-TEST ANTI-DOPING,
deoarece mai multi SPORTIVI pot face testul anti-
doping, iar TESTUL ANTI-DOPING este facut de unul
sau mai multi SPORTIVI;
b) Diagrama finală
LISTĂ CONCURSLISTĂ CONCURS# ID
* punctaj
LISTĂ CONCURSLISTĂ CONCURS# ID
* punctaj
SPORTIVSPORTIV# nr_concurent
* nume
* prenume
* data_nașterii
* tara
⁰ personal_best
SPORTIVSPORTIV# nr_concurent
* nume
* prenume
* data_nașterii
* tara
⁰ personal_best
MEDALIEMEDALIE# ID# ID
* tip* tip
* data* data
MEDALIEMEDALIE# ID# ID
* tip* tip
* data* data
REZULTAT# ID
* data
* rezultat
REZULTAT# ID
* data
* rezultat
SPORTSPORT# id
*nume
SPORTSPORT# id
*nume
PROBĂPROBĂ# id
* nume
* ora
* recordul_probei
⁰ arbitrii
PROBĂPROBĂ# id
* nume
* ora
* recordul_probei
⁰ arbitrii
GHEAȚĂGHEAȚĂGHEAȚĂGHEAȚĂ ZĂPADZĂPADĂĂ
ZĂPADZĂPADĂĂ
TEST_ANTIDOPINTEST_ANTIDOPINGG# id
TEST_ANTIDOPINTEST_ANTIDOPINGG# id
7) Modelul fizic
Pentru a crea baza de date propriu-zisă, am implementat
modelul conceptual, transformându-l astfel în modelul fizic. Primul
pas a fost crearea tabelelor bazei de date utilizând limbajul de
definire a datelor (DDL). Am definit în acest moment cheile
primare (PK), cheile unice (UK) şi pe cele străine (FK) pentru
fiecare tabel în parte. Am ţinut cont de constrângeri şi de regulile
impuse de organizarea companiei.
Tabelele poti fi folosite pentru a afla diverse informatii despre
starea concursului, despre probe (imaginea de mai jos), sportivi si
medaliile obtinute de acestia. De asemenea, ele pot fi folosite si in
vederea raportarii tuturor recordurilor si a rezultatelor anti-doping.
Tabelul sporturi
SQLCREATE TABLE "SPORTURI" ( "ID" NUMBER(3,0) NOT NULL ENABLE,
"NUME" VARCHAR2(100), "TIP" VARCHAR2(10), CONSTRAINT "SPORTURI_PK" PRIMARY KEY ("ID") ENABLE
)/
CREATE OR REPLACE TRIGGER "BI_SPORTURI" before insert on "SPORTURI" for each row begin if :NEW."ID" is null then select "SPORT_SEQ".nextval into :NEW."ID" from dual; end if; end;
/ALTER TRIGGER "BI_SPORTURI" ENABLE/
Tabelul probe
CREATE TABLE "PROBE" ( "ID" NUMBER(3,0) NOT NULL ENABLE,
"NUME" VARCHAR2(50), "ID_SPORT" NUMBER(3,0) NOT NULL ENABLE, "ARBITRU" VARCHAR2(50), "ORA" VARCHAR2(10), "RECORD_PROBA" VARCHAR2(50), CONSTRAINT "PROBE_PK" PRIMARY KEY ("ID") ENABLE
)/ALTER TABLE "PROBE" ADD CONSTRAINT "PROBE_FK" FOREIGN KEY ("ID_SPORT")
REFERENCES "SPORTURI" ("ID") ENABLE/
CREATE OR REPLACE TRIGGER "BI_PROBE" before insert on "PROBE" for each row begin if :NEW."ID" is null then select "PROBE_SEQ".nextval into :NEW."ID" from dual; end if; end;
/ALTER TRIGGER "BI_PROBE" ENABLE/