Sunteți pe pagina 1din 19

C. N.

Octav Onicescu

L uc r a r e p e nt r u o b t i ne r e a a t e st a t ul u i
Profesional la Informati ca

Magazin de Electronice

Elev: Manolache Alexandru Cristian Nicolae


Profesor coordonator: Dan Radulescu

Mai 2017
1.Motivaie

In secolul 21, oamenii devin tot mai dependenti de tehnologie deoarece toate
activitile de zi cu zi se bazeaz pe un obiect care este acionat de curentul electric
sau de reacii chimice. De la Revoluia Industriala, omul si-a uurat munca cu ajutorul
mainriilor propulsate mai nti de abur, iar cu trecerea timpului, s-a ajuns la energia
electrica, dup multe descoperiri si inovaii.
Dar cele mai afectate domenii sunt si vor fi industria IT&C si a Automobilelor.
Prima dintre ele se afla ntr-o dezvoltare foarte rapida, iar in ultimii 30-40 de ani, a
evoluat ntr-un ritm foarte rapid, transformnd-o ntr-un domeniu foarte important
pentru omul modern care trebuie sa rmn conectat mereu si care dorete mai mult de
la dispozitivele electronice pe care le are.
Motivaia personala pe care am avut-o in a alege aceasta tema este ca industria din
care face parte, IT, a avut si continua sa aib un rol foarte important in viaa cotidiana
deoarece fr invenia tranzistoarelor, fr inovaia companiilor ca Intel, AMD, Sun
Microsystems sau a giganilor ca IBM, Siemens, Hewlett-Packard sau a Laboratorului
Bell al gigantului Finlandez Nokia, nu am fi avut multe tehnologii importante ca
reeaua GSM, care a evoluat pana la a 4-a generaie, sau pe denumirea comerciala 4G,
standard nc neatins de nici o tehnologie disponibila la momentul actual, singura care
s-a apropiat fiind LTE (Long Term Evolution) sau chiar internetul fr fir, denumit
Wi-Fi.. Totul a pornit de la nevoia omului de a rmne conectat, de a fi mereu la
curent cu ce se intampla, dar mai important de la nevoia de a-si uura viaa.
Un magazin de electronice nu se refera doar la comercializare de aparate
electronice de uz casnic, cum ar fi roboti de buctrie, usctoare de par, cuptoare cu
microunde sau telefoane mobile inteligente si calculatoare, ci si piesele componente
ale acestora. De la procesoare de toate socketurile, placi de baza de diferii factori de
forma, uniti de stocare de diferite tipuri de tehnologie si capaciti de stocare, pana
la componente electronice ca tranzistorii, rezistorii sau condensatori pentru a putea
pstra in uz aparatele electronice cnd se defecteaz fr a necesita nlocuirea totala.
Cel mai important lucru pentru un magazin de electronice care vrea sa fie lider de
pia este sa aib mereu stocurile aprovizionate, sa fie printre primii care aduc produse
pe pia, si sa aib nite angajai prietenoi si competeni in domeniul ales.

2
2.Baza de date. Teorie
2.1.Introducere

O baz de date este un instrument pentru colectarea i organizarea informaiilor.


Bazele de date pot stoca informaii despre persoane, produse, comenzi sau orice altceva.
Multe baze de date ncep ca o list ntr-un program de procesare a textului sau o foaie
de calcul. Pe msur ce lista se mrete, datele ncep s conin redundane i
inconsistene. Ele devin greu de neles sub form de list i exist modaliti limitate
de a cuta sau a extrage subseturi de date pentru revizuire. Dup ce ncep s apar aceste
probleme, este o idee bun s transferai datele ntr-o baz de date creat de un sistem
de gestionare a bazelor de date (DBMS)

Sistemele de baze de date sunt importante in viata de zi cu zi n societatea modern.


n ultimii ani, sistemele de date de baze s-au dezvoltat i sunt unele dintre cele mai
importante n domeniul tehnologiei informaiei, avnd un impact asupra modului de
organizare i funcionare a numeroaselor companii, instituii publice i servicii. Acestea
sunt dependente de funcionarea corect a sistemelor de baze de date.

Marea majoritate a sistemelor de baze de date existente n momentul de fa sunt


relaionale i exist un numr mare de astfel de sisteme care pot fi achiziionate i
folosite pentru dezvoltare. Modelul relaional de baze de date a fost introdus n anul
1970 de ctre E.F. Codd.

Cel mai rspndit tip de baze de date este cel relaional, n care datele sunt memorate
n tabele. Pe lnga tabele, o baz de date relaional mai poate conine: indeci,
proceduri stocate, declanatori, utilizatori i grupuri de utilizatori, tipuri de date,
mecanisme de securitate i de gestiune a tranzaciilor etc.

Alte tipuri de baze de date sunt modelul ierarhic, modelul orientat pe obiecte i, mai
nou, modelul XML.

3
2.2.Definiia bazei de date i avantaje
O baz de date este o colecie de date centralizate, creat i meninut
computerizat, n scopul prelucrrii datelor n contextul unui set de aplicaii.
Prelucrarea datelor se refer la operaiile de introducere, tergere, actualizare i
interogare a datelor.

Baza de date este o colecie logic coerent de date.


Baza de date este destinat, construit i populat de date despre un domeniu
bine precizat. Are un grup de utilizatori i un grup de aplicaii.

Bazele de date pot avea mrimi (numr de nregistrri) i complexiti extrem de


variate, de la cteva zeci de nregistrri (agenda de telefon) pana la milioane de
nregistrri (crile dintr-o bibliotec).Simple colecii de fie (documente pe hrtie) sau
fiiere care conin date, dar nu permit operaii de interogare nu sunt considerate baze de
date.

Fa de vechile metode de nregistrare a datelor privind diferite activiti pe fie sau


chiar n fiiere pe disc, bazele de date ofer avantaje considerabile, ceea ce explic
utilizarea extinsa.

Avantaje:

1. Partajare: spre deosebire de datele din fiierele de date pe care le pot accesa doar
utilizatorii care le-au creat i le ntrein, la cele din baza de date pot avea acces i
angajaii unei organizaii care i pot partaja datele din baza de date.
2. Consisten: fiecare utilizator al bazei de date o poate actualiza, nu doar
utilizatorii din departamentul care gestioneaz baza de date.
3. Integritate: datele vor fi actualizate doar n baza de date i nu n fiecare colecie
de date. De asemenea, se mai pot aduga diferite proceduri pentru validarea datelor
introduse sau actualizate.
4. Securitate: poate fi asigurat mai uor pentru o singur baz de date dect pentru
mai multe fiiere de date. Doar administratorul poate sa modifice tabelele sau structura
bazei de date.
5. Centralizare: poate fi desemnat o persoan ca responsabil cu administrarea
bazei de date. Acea persoana primeste contul de SYSDBA pentru BD Oracle.

4
6. Transparen: utilizatorul poate obine anumite informaii din baza de date fr
s fie cazul s cunoasc toat organizaia ei complex.
7. Standardizare: Posibilitatea introducerii standardelor privind modul de stocare
a datelor, ceea ce permite interschimbarea datelor ntre organizaii.
8. Independena datelor: Se pot asigura dou tipuri de independen a datelor:
Fizic, orice modificare a structurii datelor nu afecteaz programul de aplicaie
i, reciproc, orice modificare a programului de aplicaie nu afecteaz structura datelor;
Logic, pot fi definite entiti noi i pot fi adugate date noi n baza de date fr
s fie afectai utilizatorii care nu au nevoie de ele.

2.3.Modele de baze de date


Modelul de date reprezintansamblul de concepte i instrumente necesare pentru a
construi o schem a bazei de date. Modelarea datelor poate viza toate datele din cadrul
bazei de date (schema/arhitectura datelor) sau o parte dintre ele (subscheme). Schema
i subschema bazei de date sunt modelele logice ale bazei de date care au asociate
principii generale pentru structurarea, manipularea i asigurarea integritii datelor, fr
a reflecta modul de reprezentare i stocare a acestor date care sunt atributele modelului
fizic. Se cunosc mai multe tipuri de baze de date dup modul de organizare, modul de
dispunere pe suport magnetic a informaiei i a elementelor componente.

Cele mai rspndite modele de organizare a bazelor de date sunt urmtoarele:

Modelul ierarhic (Hierarchical Model) legturile dintre date sunt ordonate


unic, accesul se face numai prin vrful ierarhiei, un subordonat nu poate avea dect un
singur superior direct i nu se poate ajunge la el dect pe o singur cale. O schem
ierarhic este un arbore direcionat reprezentat pe mai multe niveluri n care nodurile
sunt tipurile de nregistrri iar arcele sunt tipurile de legturi. Fiecare nod (cu excepia
nodului rdcin) are o singur legtur ctre un nod de pe un nivel superior (nodul
printe) i fiecare nod (cu excepia nodurilor frunz) are una sau mai multe legturi
ctre noduri de pe nivelul imediat inferior (noduri fii).
Modelul reea (Network Model) datele sunt reprezentate ca ntr-o mulime de
ierarhii n care un membru al ei poate avea un numr nedefinit de superiori, iar la un
subordonat se poate ajunge n mai multe feluri. La fel ca i modelul ierarhic,
dezavantajul principal al modelului reea este acela c fiecare interogare trebuie s fie

5
prevzut nc din faza de proiectare, prin memorarea explicit a legturilor ntre
tipurile de entiti. n plus, complexitatea reprezentrii este deosebit de ridicat, iar
programatorii trebuie s o cunoasc pentru a putea realiza aplicaiile necesare.
Modelul relaional (Relational Model) structura de baz este aceea de relaie
tabel, limbajul SQL (Structured Query Language) este specializat n comenzi de
manipulare la nivel de tabel. Termenul relaional a fost introdus de E. F. Codd,
cercettor al firmei IBM n 1969, cel care a publicat n 1970 lucrarea Un model
relaional de date pentru bnci mari de date partajate i a enunat cele 13 reguli de
baz necesare pentru definirea unei baze de date relaionale. Alte lucrri ale lui Codd,
ca i ale altor cercettori ca R. Boyce, J.D. Ullman etc au perfecionat modelul de date
relaional i au permis dezvoltarea sistemelor de baze de date.

Client ID Nume, prenume Strada Ora Telefon

19846216877462 Popa Silvia Uverturii Bucureti 0758873394


64312849516684 Darius Ionel Patlagelei Bucureti 0767456981
78654161987635 Onescu Andrei Locomotivei Bucureti 0745987441

Cont Nr Cont Balana Depozit ID Nr Cont


77785 8895 19846216877462 77785
84777 1887
66587 2998 64312849516684 84777
78654161987635 66587

Exemplu de baz de date relaional

2.4.Baza de date relaional


Baza de date relaional se bazeaz pe noiunea de relaie din matematic, care
corespunde unei entiti de acelai tip i are o reprezentare uor de neles i de
manipulat, ce const intr-un tabel bidimensional compus din linii i coloane. Fiecare

6
linie din tabel reprezint o entitate i este compus din mulimea valorilor atributelor
entitii respective, fiecare atribut corespunznd unei coloane a tabelului.

Baza de date relaional reprezint o mulime structurat de date care poate satisface
n timp minim i ntr-o manier selectiv mai muli utilizatori. Aceast mulime de date
modeleaz un sistem sau un proces din lumea real i servete ca suport unei aplicaii
informatice.

Modelul relaional este cel mai cunoscut model de date i majoritatea SGBD curente
se bazeaz pe modelul relaional. Acesta are urmtoarele avantaje fa de celelalte
modele de organizare:

Programele nu fac apel la pointere, fiiere inverse sau alte elemente ale schemei
interne a bazei de date.
Este un model uor de neles i uor de vizualizat.
Ofer faciliti multiple de definire i manipulare a datelor prin folosirea unor
limbaje procedurale bazate pe algebra relaional i limbaje neprocedurale, avnd la
baz calculul relaional.
Asigur independena structurii logice a datelor fa de modul de stocare fizic
a lor.
Regulile i restriciile care asigur integritatea datelor i protejarea datelor i a
structurii de date sunt uor de neles.
Beneficiaz de un limbaj de programare recunoscut i acceptat, limbajul SQL
(Structured Query Language), pentru care au fost emise mai multe standarde de ctre
Organizaia Internaional de Standardizare (International Standardization Office -
ISO). Majoritatea sistemelor de gestiune a bazelor de date relaionale actuale
implementeaz versiunea din anul 1992 a standardului, SQL 92 sau SQL2.
Spaiul de stocare a datelor este redus (redundana datelor este redus).

3. Baza de date

3.1.Cod Oracle
Urmatoarele linii de cod reprezinta baza de date, iar langa ele este reprezentarea
tabelara.

7
CREATE TABLE "ID" (
"ID" NUMBER(10) PRIMARY KEY
);

CREATE SEQUENCE "ID_SEQ"


NOCACHE;

CREATE TRIGGER "ID_BI"


BEFORE INSERT ON "ID"
FOR EACH ROW
BEGIN
IF :NEW."ID" IS NULL THEN
SELECT "ID_SEQ".NEXTVAL INTO
:NEW."ID" FROM DUAL;
END IF;
END;;
CREATE TABLE "ANGAJAT" (
"ID_ANGAJAT" NUMBER(10) PRIMARY
KEY,
"NUME" VARCHAR2(1000 CHAR) NOT
NULL,
"PRENUME" VARCHAR2(1000 CHAR) NOT
NULL,
"CONTRACT_DE_MUNCA" NUMBER(12, 2)
NOT NULL,
"VARSTA" NUMBER(12, 2) NOT NULL,
"SALARIU" NUMBER(12, 2) NOT NULL,
"POST" CLOB NOT NULL,
"CV" CLOB UNIQUE NOT NULL
);

ALTER TABLE "ANGAJAT" ADD CONSTRAINT


"FK_ANGAJAT__ID_ANGAJAT" FOREIGN KEY
("ID_ANGAJAT") REFERENCES "ID" ("ID");

8
CREATE TABLE "ANGAJAT_SERVICE" (
"ID_ANGAJAT_SERVICE" NUMBER(10)
PRIMARY KEY,
"NUME" VARCHAR2(1000 CHAR) NOT
NULL,
"PRENUME" VARCHAR2(1000 CHAR) NOT
NULL,
"CONTRACT_DE_MUNCA" NUMBER(12, 2)
NOT NULL,
"VARSTA" NUMBER(12, 2) NOT NULL,
"SALARIU" NUMBER(12, 2) NOT NULL,
"SPECIALIZARE" CLOB NOT NULL,
"CV" CLOB NOT NULL
);

ALTER TABLE "ANGAJAT_SERVICE" ADD


CONSTRAINT
"FK_ANGAJAT_SERVICE__ID_ANGAJAT"
FOREIGN KEY ("ID_ANGAJAT_SERVICE")
REFERENCES "ID" ("ID");

CREATE TABLE "LOCATIE" (


"ID" NUMBER(10) PRIMARY KEY
);

CREATE SEQUENCE "LOCATIE_SEQ"


NOCACHE;
CREATE TABLE "SERVICE" (
"ID_SERVICE"
CREATE TRIGGERNUMBER(10)
"LOCATIE_BI"
PRIMARY KEY, ON "LOCATIE"
BEFORE INSERT
"LOCATIE" NUMBER(10) NOT NULL
FOR EACH ROW
);
BEGIN
IF :NEW."ID" IS NULL THEN
CREATE
SELECTINDEX
"LOCATIE_SEQ".NEXTVAL
"IDX_SERVICE__LOCATIE"
INTO :NEW."ID" FROM DUAL; ON
"SERVICE"
END IF; ("LOCATIE");
END;;
ALTER TABLE "SERVICE" ADD
CONSTRAINT
"FK_SERVICE__ID_SERVICE"
FOREIGN KEY ("ID_SERVICE")
REFERENCES "ID" ("ID");

ALTER TABLE "SERVICE" ADD


CONSTRAINT
"FK_SERVICE__LOCATIE" FOREIGN
KEY ("LOCATIE") REFERENCES
"LOCATIE" ("ID");

9
10
REATE TABLE "CONTACT" (
"ID" NUMBER(10) PRIMARY KEY,
"TELEFON_SHOWROOM" NUMBER(10) NOT NULL,
"TELEFON_SERVICE" NUMBER(10) NOT NULL
);

CREATE INDEX "IDX_CONTACT__TELEFON_SERVICE" ON "CONTACT" ("TELEFON_SERVICE");

CREATE INDEX "IDX_CONTACT__TELEFON_SHOWROOM" ON "CONTACT"


("TELEFON_SHOWROOM");

ALTER TABLE "CONTACT" ADD CONSTRAINT "FK_CONTACT__TELEFON_SERVICE" FOREIGN KEY


("TELEFON_SERVICE") REFERENCES "SERVICE" ("ID_SERVICE");

ALTER TABLE "CONTACT" ADD CONSTRAINT "FK_CONTACT__TELEFON_SHOWROOM" FOREIGN KEY


("TELEFON_SHOWROOM") REFERENCES "SHOWROOM" ("ID");

CREATE SEQUENCE "CONTACT_SEQ" NOCACHE;

CREATE TRIGGER "CONTACT_BI"


BEFORE INSERT ON "CONTACT"
FOR EACH ROW
BEGIN
IF :NEW."ID" IS NULL THEN
SELECT "CONTACT_SEQ".NEXTVAL INTO :NEW."ID" FROM DUAL;
END IF;
END;;

11
CREATE TABLE "SHOWROOM" (
"ID" NUMBER(10) PRIMARY KEY,
"LOCATIE" NUMBER(10) NOT NULL,
"DEPARTAMENTE" CLOB NOT NULL,
"RIDICARE_COMANDA" CLOB NOT NULL,
"CONSTATARE_SERVICE" NUMBER(10) NOT NULL
);

CREATE INDEX "IDX_SHOWROOM__CONSTATARE_SERVI" ON "SHOWROOM"


("CONSTATARE_SERVICE");

CREATE INDEX "IDX_SHOWROOM__LOCATIE" ON "SHOWROOM" ("LOCATIE");

ALTER TABLE "SHOWROOM" ADD CONSTRAINT


"FK_SHOWROOM__CONSTATARE_SERVIC" FOREIGN KEY
("CONSTATARE_SERVICE") REFERENCES "SERVICE" ("ID_SERVICE");

ALTER TABLE "SHOWROOM" ADD CONSTRAINT "FK_SHOWROOM__ID" FOREIGN


KEY ("ID") REFERENCES "ID" ("ID");

ALTER TABLE "SHOWROOM" ADD CONSTRAINT "FK_SHOWROOM__LOCATIE"


FOREIGN KEY ("LOCATIE") REFERENCES "LOCATIE" ("ID");

12
CREATE TABLE "DEPOZIT" (
"ID" NUMBER(10) PRIMARY KEY,
"ID_DEPOZIT" NUMBER(10) NOT NULL,
"LOCATIE" NUMBER(10) NOT NULL,
"APROVIZIONARE" CLOB NOT NULL,
"SHOWROOM" NUMBER(10) NOT NULL
);

CREATE INDEX "IDX_DEPOZIT__ID_DEPOZIT" ON "DEPOZIT" ("ID_DEPOZIT");

CREATE INDEX "IDX_DEPOZIT__LOCATIE" ON "DEPOZIT" ("LOCATIE");

CREATE INDEX "IDX_DEPOZIT__SHOWROOM" ON "DEPOZIT" ("SHOWROOM");

ALTER TABLE "DEPOZIT" ADD CONSTRAINT "FK_DEPOZIT__ID_DEPOZIT" FOREIGN KEY


("ID_DEPOZIT") REFERENCES "ID" ("ID");

ALTER TABLE "DEPOZIT" ADD CONSTRAINT "FK_DEPOZIT__LOCATIE" FOREIGN KEY ("LOCATIE")


REFERENCES "LOCATIE" ("ID");

ALTER TABLE "DEPOZIT" ADD CONSTRAINT "FK_DEPOZIT__SHOWROOM" FOREIGN KEY


("SHOWROOM") REFERENCES "SHOWROOM" ("ID");

CREATE SEQUENCE "DEPOZIT_SEQ" NOCACHE;

CREATE TRIGGER "DEPOZIT_BI"


BEFORE INSERT ON "DEPOZIT"
FOR EACH ROW
BEGIN
IF :NEW."ID" IS NULL THEN
SELECT "DEPOZIT_SEQ".NEXTVAL INTO :NEW."ID" FROM DUAL;
END IF;
END;;

13
CREATE TABLE "EMAIL" (
"EMAIL_ANGAJAT" NUMBER(10)
PRIMARY KEY,
"EMAIL_SHOWROOM"
NUMBER(10) NOT NULL,
"EMAIL_SERVICE" NUMBER(10)
NOT NULL,
"EMAIL_ANGAJAT_SERVICE"
NUMBER(10) NOT NULL
);

CREATE INDEX
"IDX_EMAIL__EMAIL_ANGAJAT_SER
VI" ON "EMAIL"
("EMAIL_ANGAJAT_SERVICE");

CREATE INDEX
"IDX_EMAIL__EMAIL_SERVICE" ON
"EMAIL" ("EMAIL_SERVICE");

CREATE INDEX
"IDX_EMAIL__EMAIL_SHOWROOM"
ON "EMAIL"
("EMAIL_SHOWROOM");

ALTER TABLE "EMAIL" ADD


CONSTRAINT
"FK_EMAIL__EMAIL_ANGAJAT"
FOREIGN KEY ("EMAIL_ANGAJAT")
REFERENCES "ANGAJAT"
("ID_ANGAJAT");

ALTER TABLE "EMAIL" ADD


CONSTRAINT
"FK_EMAIL__EMAIL_ANGAJAT_SERV
IC" FOREIGN KEY
("EMAIL_ANGAJAT_SERVICE")
REFERENCES "ANGAJAT_SERVICE"
("ID_ANGAJAT_SERVICE");

ALTER TABLE "EMAIL" ADD


CONSTRAINT
"FK_EMAIL__EMAIL_SERVICE"
FOREIGN KEY ("EMAIL_SERVICE")
REFERENCES "SERVICE"
("ID_SERVICE");

ALTER TABLE "EMAIL" ADD


CONSTRAINT
"FK_EMAIL__EMAIL_SHOWROOM"
FOREIGN KEY
("EMAIL_SHOWROOM")
REFERENCES "SHOWROOM" ("ID"); 14
CREATE TABLE "CLIENT" ( CREATE TABLE "STOC" (
"ID_CLIENT" NUMBER(10) PRIMARY KEY, "COD_PRODUS" NUMBER(12, 2)
"NUME" VARCHAR2(1000 CHAR) NOT PRIMARY KEY,
NULL, "STOC_SHOWROOM" NUMBER(10)
"PRENUME" VARCHAR2(1000 CHAR) NOT NULL,
NOT NULL, "STOC_DEPOZIT" NUMBER(10) NOT
"EMAIL_CLIENT" NUMBER(10) NOT NULL
NULL, );
"MODALITATE_PLATA" VARCHAR2(1000
CHAR) NOT NULL, CREATE INDEX
"GARANTIE" NUMBER(10) NOT NULL, "IDX_STOC__STOC_DEPOZIT" ON
"USERNAME" VARCHAR2(1000 CHAR), "STOC" ("STOC_DEPOZIT");
"PAROLA" VARCHAR2(1000 CHAR)
); CREATE INDEX
"IDX_STOC__STOC_SHOWROOM" ON
CREATE INDEX "STOC" ("STOC_SHOWROOM");
"IDX_CLIENT__EMAIL_CLIENT" ON
"CLIENT" ("EMAIL_CLIENT"); ALTER TABLE "STOC" ADD
CONSTRAINT
CREATE INDEX "IDX_CLIENT__GARANTIE" "FK_STOC__STOC_DEPOZIT" FOREIGN
ON "CLIENT" ("GARANTIE"); KEY ("STOC_DEPOZIT") REFERENCES
"DEPOZIT" ("ID");
ALTER TABLE "CLIENT" ADD CONSTRAINT
"FK_CLIENT__EMAIL_CLIENT" FOREIGN ALTER TABLE "STOC" ADD
KEY ("EMAIL_CLIENT") REFERENCES CONSTRAINT
"EMAIL" ("EMAIL_ANGAJAT"); "FK_STOC__STOC_SHOWROOM"
FOREIGN KEY ("STOC_SHOWROOM")
ALTER TABLE "CLIENT" ADD CONSTRAINT REFERENCES "SHOWROOM" ("ID");
"FK_CLIENT__GARANTIE" FOREIGN KEY
("GARANTIE") REFERENCES "SERVICE"
("ID_SERVICE");

ALTER TABLE "CLIENT" ADD CONSTRAINT


"FK_CLIENT__ID_CLIENT" FOREIGN KEY
("ID_CLIENT") REFERENCES "ID" ("ID");

15
CREATE TABLE
"COMPONENTA_CALCULATOR" (
"ID" NUMBER(10) PRIMARY KEY,
"COD_COMPONENTA" NUMBER(12, 2)
NOT NULL,
"CATEGORIE" VARCHAR2(1000 CHAR) NOT
NULL,
"SPECIFICATII_TEHNICE" CLOB NOT NULL
);
CREATE TABLE "CONECTICA" (
CREATE INDEX "COD_CONECTICA" NUMBER(12, 2)
"IDX_COMPONENTA_CALCULATOR__COD" PRIMARY KEY,
ON "COMPONENTA_CALCULATOR" "CATEGORIE" VARCHAR2(1000 CHAR)
("COD_COMPONENTA"); NOT NULL,
"PRODUCATOR_SERIE_MODEL"
ALTER TABLE VARCHAR2(1000 CHAR) NOT NULL
"COMPONENTA_CALCULATOR" ADD );
CONSTRAINT
"FK_COMPONENTA_CALCULATOR__COD_" ALTER TABLE "CONECTICA" ADD
FOREIGN KEY ("COD_COMPONENTA") CONSTRAINT
REFERENCES "STOC" ("COD_PRODUS"); "FK_CONECTICA__COD_CONECTICA"
FOREIGN KEY ("COD_CONECTICA")
CREATE SEQUENCE REFERENCES "STOC"
"COMPONENTA_CALCULATOR_SEQ" ("COD_PRODUS");
NOCACHE;
CREATE TABLE "DIVERS" (
CREATE TRIGGER "COD_DIVERS" NUMBER(12, 2)
"COMPONENTA_CALCULATOR_BI" PRIMARY KEY,
BEFORE INSERT ON "CATEGORIE" VARCHAR2(1000 CHAR)
"COMPONENTA_CALCULATOR" NOT NULL,
FOR EACH ROW "DESCRIERE_UTILIZARE" CLOB NOT
BEGIN NULL,
IF :NEW."ID" IS NULL THEN "PRODUCATOR_MODEL" CLOB NOT
SELECT NULL
"COMPONENTA_CALCULATOR_SEQ".NEXT );
VAL INTO :NEW."ID" FROM DUAL;
END IF; ALTER TABLE "DIVERS" ADD
END;; CONSTRAINT
"FK_DIVERS__COD_DIVERS" FOREIGN
KEY ("COD_DIVERS") REFERENCES
"STOC" ("COD_PRODUS");

16
CREATE TABLE "PERIFERIC" (
"COD_PERIFERIC" NUMBER(12, 2)
PRIMARY KEY,
"CATEGORIE" VARCHAR2(1000
CHAR) NOT NULL,
"PRODUCATOR_SERIE_MODEL"
CLOB NOT NULL
);

ALTER TABLE "PERIFERIC" ADD


CONSTRAINT
"FK_PERIFERIC__COD_PERIFERIC"
FOREIGN KEY ("COD_PERIFERIC")
REFERENCES "STOC"
("COD_PRODUS");

CREATE TABLE "RETELISTICA" (


"COD_RETELISTICA" NUMBER(12,
2) PRIMARY KEY,
"CATEGORIE" VARCHAR2(1000
CHAR) NOT NULL,
"PRODUCATOR_SERIE_MODEL"
CLOB NOT NULL
);

ALTER TABLE "RETELISTICA" ADD


CONSTRAINT
"FK_RETELISTICA__COD_RETELISTIC
" FOREIGN KEY
("COD_RETELISTICA") REFERENCES
"STOC" ("COD_PRODUS");

CREATE TABLE
"SISTEM_DE_CALCUL" (
"COD_SISTEM" NUMBER(12, 2)
PRIMARY KEY,
"PRODUCATOR_MODEL" CLOB
NOT NULL,

"NOU_RECONDITIONAT_ASAMBLAT
" NUMBER(12, 2) NOT NULL,
"SPECIFICATII_DETALIATE" CLOB
NOT NULL
);

ALTER TABLE "SISTEM_DE_CALCUL"


ADD CONSTRAINT
"FK_SISTEM_DE_CALCUL__COD_SIS
TE" FOREIGN KEY ("COD_SISTEM")
REFERENCES "STOC"
("COD_PRODUS")

17
3.2.ERD
CUPRINS

MOTIVATIE .......................................................... 2
BAZA DE DATE. TEORIE ................................... 3
INTRODUCERE ............................................... 3
DEFINITIE SI AVANTAJE ............................. 4
MODELE DE BAZE DE DATE ...................... 5
BAZA DE DATE RELATIONALA ................. 7
BAZA DE DATE .................................................... 8
COD ORACLE ................................................. 8
ERD .................................................................. 18