Upload
mocanu-doru
View
212
Download
0
Embed Size (px)
DESCRIPTION
Baze de Date
Citation preview
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
Baze de date~Proiect~
Studenti:
Bocan Eugen
Cosma Gabriel
Ristoiu Emil
Diaconu Silviu
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
Crearea si administrea bazei
de date a unei brutarii
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
Cuprins:
1. Introducere2. Cerintele bazei de date3. Modelul entitate-asociere4. Relationarea si verificarea din punct de vedere al normalizarii.5. Scrierea instructiunilor pentru crearea tabelelor si pentru
introducerea de date in tabele6. Interogari in baza de date SQL
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
INTRODUCERE
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
Cerinte
Crearea unei baze de date relationale in SQL Plus.
Se dau mai jos cerintele pentru constructia unei baze de data aferente unei firme numita METALART ce are ca scop ilustrarea procesului descris.
In faza preliminara se cunoaste faptul ca firma Metalart are un numar de angajati organizati pe departamente su urmareste realizarea unor produse, distribuirea si cautarea de noi client.
Se presupune ca dupa analiza cerintelor s-a decis urmatoarea descriere ca elemente primare pentru baza de date. Firma este organizata pe departamente, fiecare departament are un nume, ID si un numar de angajati.
Un departament este implicat in mai multe domenii fiecare dintre ele are un nume, ID. Se pastreza pentru fiecare angajat care este afiliat la mai multe departamente si poate lucre si in mai multe domenii, ce nu sunt coordinate de acelasi department.
FIecare angajat are un sef numit manager.
Enitati si atribute
O entitate este un obiect cu existent fizica,persoana particulara, firma etc. Orice entitate are o serie de proprietati numite atribute ce particularizeaza entitatea respectiva.
Exemple de entitati:
E1={nume =Vasile Ionescu, adresa =Dreptatii -211, Telefon 6621311}
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata E2={nume=U.V.T,adresa Bulevardul Independentei,rector Calin Oros}
Entitati tip,atribute tip
Angajati (#ID, nume,adresa,telefon, CNP, ID department)
Departament (#ID,denumire, ID sef)
Soferi (#ID,Categorie)
Agenti (#ID, zona)
Comenzi (#Nr.Comanda, data livrare,ID sofer, ID agent, ID client)
Produse (#ID, denumire produs, pret, ID department)
Clienti (#ID, nume, adresa)
Continut comenzi (#numar comanda, #ID produs, pret, cantitate)
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
CERINTELE
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
ADRESAAA CNP
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
N:1
1:1 1:N
Angajati
departament
produse
comenzi
clienti
#ID
NUME
telefon
#ID
Denumire
ID Manager
#IDDENUMIRE
ID Departament
PRET#NR. COMANDA
CANTITATE#ID NUME ADRESA
Lucreaza
fabrica
ISA
gestioneaza
plaseaza
AGENTI
ISA
SOFERI
Livreaza
includ
Pret
Cantitateete
Manageriaza
Zona
ID
Pret
categorie
ID
Pret
Salariu
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
Avantajele aditionale oferite de utilizarea bazelor de date
1. Facilitarea si grabirea standardizarii datorita cooperarii largi intre diverse departamente, collective de proiectare, utilizatori. Prin standard intelegem numele si formatul datelor, formatul afisarii, terminologia etc.
2. Flexibiliatea ce consta in posibilitatea modificarii structurii bazei de date fara a mai fi necesara modificarea programelor de aplicatie.
3. Reducerea timpului de dezvoltare a aplicatiilor, descrirea si implementarea unei noi aplicatii de baze de date cere mai putin timp decat cel afferent dezvoltarii unor programe particulare capabile sa manipuleze tabele, acesta fiind estima ca 1/4 pana 1/8 in principal datorita facilitatilor oferite de DBMS.
4. Facilitatea de reactualizare ca urmare a adaugarii de noi data sau modoficarea structurii datelor existente5. Economisirea spatiului de stocare este o consecinta a structurarii datelor prin eliminarea datelor
redundante.
Normalizarea
Este un process iteartiv in timpul caruia baza de date se prelucreaza in sensul scaderii redundantei si a cresterii stabilitatii. In timpul procesului de normalizare se determina in ce tabela o piesa particulara va fi plasata, sau care este relatia ei cu celelalte date.
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
In timpul normalizarii se elimina o serie de campuri:
- Campuri care contin mai mult de o singura valoare- Campuri duplicate sau care se repeat- Campuri care nu descrie tabela- Campuri care contin date redundante- Campuri care sunt derivate din alte campuri
Forma normala de ordinul unu:
Se elimina duplicatele sau campurile care contin mai mult decat o valoare. Ele sunt mutate intr-o alta tabela.
Forma normala de ordinul doi.
O tabela este o forma normala de ordin doi cand este prima forma normala si contine numai campuri care dau informatii despre cheia tabelei. A doua regula a normalizarii contine si restrictia de a pastra intr-o tabela numai acele campuri care depind de cheia primara a tabelei curente.
Forma normala de ordinul trei.
O tabela este in formala normala de ordin trei atunci cand ea contine numai campuri independente si nu pot fi derivate campuri din alte campuri existente.
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata
1. Scrierea instructiunilor pentru crearea tabelelor si pentru introducerea de date in tabele
Crearea bezei de date.
Pentru a crea o baza de date si apoi un tabel intr-o baza de date se foloseste un limbaj SQL special cunoscut sub numele de DATA DEFINITION LANGUAGE (DDL). Pentru a crea o baza de date folsim urmatoarea comanda:
CREATE DATABASE metal_art;
Inainte de a crea un table sau de a lucre cu alete comenzi intr-o baza de date trebuie sa intram in baza de date existent folosind comanda:
USE metal_art;
Pentru a crea un tabel intr-o baze de date folosind comanda CREATE TABLE care are urmatoarea forma:
CREATE TABLE tabel ( coloana tip,coloana tip,…)
Unde tabel este numele tabelului, coloana este numele unei coloane, tip este tipul datelor introduce in coloana si se poate specifica un numar nedefinit de coloane.
Tabela ANGAJATI:
CREATE TABLE ANGAJATI (ID INT (3) PRIMARY KEY, NUME CHAR(10), ADRESA CHAR(15), CNP NUMERIC(13), TELEFON NUMERIC (13), ID DEPARTAMENT INT(10) FOREIGN KEY, SALARIU FLOAT (5) );
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata Introducere date in tabel;
INSERT INTO ANGAJATI (coloana 1, coloana 2, , coloana 3 , coloana 4 , coloana5 , coloana 6 , coloana 7) VALUES (1, Eugen , Tatarani,1680126535872, 0723469375, 2500 ,1 );
Tabela DEPARTAMENT
CREATE TABLE DEPARTAMENT (ID INT(3) PRIMARY KEY, NUME DEPARTAMENT CHAR(10), ID MANAGER INT(10) FOREIGN KEY);
INSERT INTO DEPARTAMENT ( coloana 1 , coloana 2, coloana 3) VALUES (1, BRUTARIE, 1,);
Tabela SOFERI
CREATE TABLE SOFERI (ID INT(3) PRIMARY KEY, CATEGORIE CHAR(3));
INSERT INTO SOFERI ( coloana 1, coloana 2) VALUES ( 1, B);
Tabela AGENTI
CREATE TABLE AGENTI ( ID INT (3), ZONA CHAR (10) )
INSERT INTO AGENTI (coloana 1, coloana 2) VALUES ( 1, PRISEACA);
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata Tabela COMENZI
CREATE TABLE COMENZI ( NUMAR COMANDA INT (6) PRIMARY KEY, PRET FLOAT (4) ‘ LEI ’, CANTITATE INT(6) ‘ BUCATI ‘);
INSERT INTO COMENZI ( coloana1, coloana 2 , coloana 3) VALUES (1, 1.2 , 100) ;
Tabela PRODUSE
CREATE TABLE ( ID INT(3) PRIMARY KEY, DENUMIRE CHAR(6) );
INSERT INTO PRODUSE (coloana1 , coloana 2) VALUES (1, PAINE);
Tabela CLIENTI
CREATE TABLE CLIENTI (ID INT(3) PRIMARY KEY, NUME CHAR(6), ADRESA CHAR(10) );
INSERT INTO CLIENTI (coloana 1, coloana 2, coloana 3) VALUES (1, MAGDALENA SRL, TARGOVISTE)
Universitatea Valahia din TargovisteFacultatea de Inginerie ElectricaSpecializarea: Automatica si Informatica Aplicata