Sunteți pe pagina 1din 27

CONCEPTE GENERALE ALE

BAZELOR DE DATE (BD)


RELATIONALE
CUPRINS

• DEFINITII
• CLASIFICARE
• STRUCTURA BAZEI DE DATE
• TABEL – PREZENTARE GENERALA
• RELATIILE INTRE TABELE
DEFINITII

• BAZA DE DATE (BD) – COLECTIE DE INFORMATII ORGANIZATA IN STRUCTURI DE


TABELE INTRE CARE EXISTA ASOCIERI SAU RELATII, OBIECTIVUL PRINCIPAL
FIIND ACCESUL FACIL SI ASIGURAREA CONSISTENTEI BAZEI DE DATE.
• MEDIUL DE BAZE DE DATE – COLECTIE DE APLICATII SOFTWARE CARE PERMIT
DEFINIREA STRUCTURII DATELOR, MANIPULAREA DATELOR STOCATE, A VIEW-
URILOR, GESTIUNEA TRANZACTIILOR.
• UN SISTEM DE GESTIUNE A BAZELOR DE DATE (SGBD) – COMPONENTA CENTRALA
A MEDIULUI DE BAZE DE DATE.
• TABELA – ENTITATEA CENTRALA INTR-UN MEDIU DE BAZE DE DATE.
• O BAZA DE DATE (BD) – COLECTIE DE TABELE.
CLASIFICARE

1. DUPA MODEL:
• BD RELATIONALE – FOLOSESC MODELUL RELATIONAL BAZAT PE ENTITATI, ATTRIBUTE, RELATII
• BD IERARHIZATA – NU EXCLUDE MODELUL RELATIONAL
• BD DISTRIBUITE (RETEA)

2. DUPA LIMBAJUL DE MANIPULARE DE DATE


• BD SQL (STRUCTURED QUERY LANGUAGE) – LIMBAJ NEPROCEDURAL
• EX: ORACLE, MYSQL, MSSQL
• BD QBE (QUERY BY EXAMPLE)
• EX: PARADOX
• BD 4GL (4TH GENERATION LANGUAGE )
• EX: PROGRESS
1. DUPA MODELUL APLICATIEI
• MONOUSER VS MULTIUSER
• ARHITECTURA CLIENT – SERVER VS ARHITECTURA NON CLIENT-SERVER

2. DUPA COST LICENTIERE


• BD PROFESIONALE
• BD COMERCIALE
• BD OPEN-SOURCE

3. DUPA INTERFATA UTILIZATOR


• ALFANUMERICA
• GRAFICA
1. DUPA PLATFORMA
• WINDOWS
• LINUX
• UNIX

2. DUPA GESTIUNEA TRANZACTIILOR


• MEDII TRANZACTIONALE
• MEDII NETRANZACTIONALE
STRUCTURA BAZEI DE DATE

1. DATA DEFINITION LANGUAGE (DDL)


- INCLUDE INSTRUCTIUNILE DE PERMIT DEFINIREA UNEI BD, A TABELELOR COMPONENTE
- INSTRUCTIUNI GENERICE: CREATE TABLE, DROP TABLE, ALTER TABLE
- INSTRUCTIUNILE CONTIN AUTOCOMMIT

2. DATA MANIPULATION LANGUAGE (DML)


- ESTE DEPENDENTA DE MODELUL DATELOR
- REPREZINTA LIMBAJUL DE CERERI
- CONTINE INSTRUCTIUNILE: SELECT, INSERT INTO, DELETE FROM, UPDATE
1. VIEW DEFINITION LANGUAGE (VDL)
- PERMITE DEFINIREA SI MANIPULAREA OBIECTELOR DIN CATEGORIA VIEW
- ESTE UN OBIECT SIMILAR CU O TABELA CARE ESTE PASTRAT IN BD

2. STORAGE DEFINITION LANGUAGE (SDL)


- INVIZIBILA PENTRU UTILIZATOR
- DETERMINA MODUL IN CARE STRUCTURILE DE DATE SUNT ORGANIZATE PENTRU STOCAREA IN MEMORIA
INTERNA

3. DATABASE ADMINISTRATOR (DBA)


- ASIGURA ACCESUL LA BD
- DETINE FUNCTIE DE ADMINISTRARE
- 2 INSTRUCTIUNI GENERICE: GRANT, REVOKE
TABEL – PREZENTARE GENERALA

Nume
(descriptor) Coloane (field)

Cap de tabel

Inregistrari
(records)
STRUCTURA UNUI TABEL

• PRIN DEFINIREA STRUCTURII UNUI TABEL SE INTELEGE STABILIREA NUMELUI


CAMPURILOR, A TIPURILOR DE DATE SI A FORMATELOR ASOCIATE.
• NUME CAMP - SIR DE CARACTERE, SIMILAR CU NUMELE VARIABILELOR IN
LIMBAJELE DE PROGRAMARE, LIMITAT CA LUNGIME FUNCTIE DE MEDIUL DE
BAZE DE DATE
• TIP DATA, FORMAT – TIP GENERIC FUNCTIE DE NUMARUL DE OCTETI NECESARI
PENTRU STOCARE (DEFINESTE MAI MULT FORMATUL DE AFISARE NU CEL DE
STOCARE)
• NUMELE COLOANEI:
• DEFINIT CA SIMBOL
• FORMAT DINTR-UN SIR DE CARACTERE CE NU SE MAI DIVID
• NUMARUL MAXIM DE CARACTERE DIFERA DE LA UN MEDIU LA ALTUL
TIPURI DE DATE MYSQL

• NUMERICE
• INTEGER
• TINYINT – 1 BYTE
• SMALLINT – 2 BYTES
• MEDIUMINT – 3 BYTES
• INT – 4 BYTES
• BIGINT – 8 BYTES
• NUMERE CU ZECIMALE
• FLOAT – EX: PRET FLOAT(3,2)
• DOUBLE – EX: MEDIE DOUBLE(10,3)
• DECIMAL – EX: TOTAL DECIMAL(10,2); SCOR DECIMAL(2)
• NUMERIC – ESTE SINONIM CU DECIMAL
• TIPUL DE DATA BIT – UTILIZAT PENTRU CAMPURI CARE AU VALORI BINARE
• TIPURI DE DATA SIRURI DE CARACTERE:
• CHAR
• VARCHAR
• TEXT
• BINARY
• VARBINARY
• BLOB
• ENUM
• SET
• TIPURI DE DATA PRIN CARE SE REPREZINTA TIMPUL:
• DATE
• TIME
• DATETIME
• TIMESTAMP
• YEAR
• NUME_TABELA (NUME_CAMP1 TIP_DATA [FORMAT],
NUME_CAMP2 TIP_DATA [FORMAT],
…… )
CHEIA PRIMARA

• REPREZINTA IDENTIFICAREA UNICA A UNEI INREGISTRARI DIN TABELA


• ESTE FORMATA DIN UNA SAU MAI MULTE COLOANE
• DE CELE MAI MULTE ORI ESTE O COLOANA DE TIP NUMERIC,
AUTOINCREMENTATA
EXEMPLU

Linii_Facturi Produse
Nr_factura# Cod_produs#
Cod_produs# Denumire_produs
Denumire_produs
Cantitate
Pret_unitar
TVA
CHEIA STRAINA

• REPREZINTA O COLOANA CARE SE REGASESTE INTR-UN ALT TABEL SI CONTINE


VALORILE DIN TABELUL RESPECTIV
EXEMPLU

Facturi Linii_Facturi
Nr_factura# Nr_factura#
Data_factura Cod_produs#
Nume_client Cantitate
Adresa_client Pret_unitar
Banca_client TVA
Cont_client
Valoare_totala_cu_
tva
Valoare_totala_fara
_tva
RELATIILE INTRE TABELE

1. RELATIA 1-1
 CEL MAI SIMPLU TIP DE RELATIE
 UNUI ELEMENT DIN TABELA T1 II CORESPUNDE UN SINGUR ELEMENT DIN TABELA T2
SI RECIPROC

2. RELATIA 1:N
 UNUI ELEMENT DIN TABELA T1 II CORESPUND UNUL SAU MAI MULTE ELEMENTE DIN
TABELA T2, IAR UNUI ELEMENT DIN TABELA T2 II CORESPUNDE UN SINGUR ELEMENT
DIN TABELA T1
3. RELATIA M:N
 UNUI ELEMENT DIN TABELA T1 II CORESPUND UNUL SAU MAI MULTE ELEMENTE DIN
TABELA T2, IAR UNUI ELEMENT DIN TABELA T2 II CORESPUND UNUL SAU MAI MULTE
ELEMENTE DIN TABELA T1
 ACEASTA RELATIE POATE FI IMPLEMENTATA NUMAI PRINTR-O TABELA SUPLIMENTARA
DE TIPUL 1:N
EXEMPLU DE RELATIE M:N

Facturi Linii_Facturi Produse


Nr_factura# Nr_factura# Cod_produs#
Data_factura Cod_produs# Denumire_produs
id_client Cantitate
Valoare_totala_cu_ Pret_unitar
tva TVA
Valoare_totala_fara
_tva
PROIECTAREA BAZEI DE DATE
VA MULTUMESC PENTRU ATENTIE!
INTREBARI?

S-ar putea să vă placă și