Sunteți pe pagina 1din 10

Baze de date

Def: O bază de date reprezintă o colecţie de date organizate într-o schemă definită de un
model conceptual; sau o colecţie de date intercorelate, împreună cu descrierea şi relaţiile
dintre ele.

O bază de date reprezintă un sistem integrat, coerent de fişiere partajabile.

Conţinutul bazei de date=> Toate datele stocate la un moment dat într-o bază de date.

Schema bazei de date=> structura datelor împreună cu relaţiile dintre entităţi, precum şi
constrângerile de integritate.

Sistem de Gestiune al Bazelor de Date (SGBD)=> Un ansamblu de programe sau un mediu


avansat de programare destinat managementului datelor din cadrul unei baze de date.

Un SGBD are următoarele funcţii principale:


1.Funcţia de definire a datelor-permite, într-un mod specific pentru fiecare SGBD în parte,
descrierea structurii de date şi a relaţiilor dintre entităţi, utilizând componenta Data
Definition Language (DDL);

2.Funcţia de manipulare-realizează popularea, actualizarea şi interogarea datelor sau a


diverselor obiecte ale bazei de date, prin utilizarea componentelor Data Manipulation
Language (DML) şi Query Language (QL);

3.Funcţia de utilizare - se pun la dispoziţia utilizatorului diverse modalităţi de interacţiune


cu sistemul. Acest “dialog” poate fi facilitat prin comenzi, meniuri, ferestre etc.

Deci, SGBD-ul oferă utilizatorului, prin componentele sale, instrumentele necesare


transformării datelor în informaţii utile.

Arhitectura unei baze de date:


Trei nivele: separă viziunea utilizatorului de detaliile implementării fizice

1. Extern=> cel mai aproape de utilizatorul final se mai numeşte nivel logic al
utilizatorului

2. Conceptual => sau nivelul logic, virtual sau semantic –unificarea semantică a
tuturor schemelor externe individuale, pentru a furniza o perspectivă globală asupra
întregii baze de date. Actorii acestui nivel sunt: administratorul sau proiectantul
bazei de date. Acest nivel are ca sarcină şi gestiunea constrângerilor de integritate şi
securitatea. Nivelul conceptual este unul intermediar între celelalte două.

3. Intern=> nivelul inferior din cadrul unei arhitecturi ANSI/SPARC

=> permite ca baza de date să fie descrisă într-un mod apropiat nivelului
fizic de reprezentare al datelor, dar nu până la detaliile fizice, precum blocuri, pagini,
sectoare, piste

=> indică modul de implementare al unei scheme conceptuale prin utilizarea unui
anume SGBD, precum MS Access sau MS Visual FoxPro

Modele de reprezentare ale datelor


• este un instrument teoretic ce contribuie la determinarea structurii, conţinutului
unei baze de date, precum şi la gestiunea acestora prin setul de operaţii pe care le
pune la dispoziţie

• Are componentele:

1. Reguli privind structurarea datelor: două seturi de astfel de reguli: una care
gestionează structura şi relaţiile dintre entităţi, iar cealaltă se preocupă de
integritatea referenţială şi de regulile de întreprindere;

2. Reguli privind manipularea datelor: doar valorile (conţinutul) memorate în baza de


date pot fi actualizate, în timp ce modelul conceptual este invariabil.

Modelele orientate pe obiect:


=>permit descrierea bazei de date doar la nivel conceptual şi extern.

=>Acestea sunt:

1.Modelele Entitate-Relaţie (ER) sau Obiect-Legătură-Entitate (OLE)

2.Modelul semantic

3. Modelul funcţional

4. Modelul orientat-obiect.

Modelele bazate pe înregistrări sunt:


1.Modelul ierarhic

2.Modelul reţea

3.Modelul relaţional
Conceptele modelului relaţional:
O bază de -modalitate de stocare a unor date pe un suport extern, cu posibilitatea regăsirii
acestora.

- modelul entitate-relaţie în care datele sunt memorate în tabele legate între ele.
Pentru a putea stabili legături între două sau mai multe tabele ale unei baze de date se
definesc chei. Cheile pot fi primare şi secundare.

Termenii cu care operează teoria relaţională sunt:

1. Relaţie=>reprezintă un TABEL, compus din linii şi coloane.

2. Atribut=>COLOANA

3. Domeniu (tip) =>şiruri de caractere, date calendaristice, numere întregi, numere


reale, valori de adevăr . Atributele se definesc pe domenii

4. Ordin (aritate, rang) =>Numărul atributelor dintr-o relaţie

5. Tuplu=>LINIILE tabelului

6. Cardinalitate=>Numărul total de tuple

7. Chei=>Setul de atribute al unei relaţii care permite identificarea unui tuplu (entitate)

Tipuri de chei:
Cheie candidate: este un atribut, sau un set K de atribute ale unei relaţii R, dacă şi numai
dacă acesta îndeplineşte următoarele proprietăţi :

1.Identificarea unică: setul K e capabil să identifice în mod unic fiecare tuplu din R;

2.Ireductibilitatea: orice subset din K nu va fi capabil să asigure identificarea unică;

3.Valorile NULL: atributele din K nu poate lua valoarea NULL (valoare neatribuită).

Obs:Atunci când cheia este compusă doar dintr-un singur atribut, aceasta este o cheie
candidată simplă, (compozită. )

Tip special de cheie candidată.=>Cheia primară este acea cheie candidată selectată să
asigure identificarea unică la un moment dat. Restul cheilor candidate se numesc chei
alternative şi pot suplini oricând rolul cheii primare.
Cheie străină sau externă.=>este o referinţă la o cheie din altă relaţie, ceea ce înseamnă că
tuplul referit trebuie să aibă pentru unul din atributele sale, o valoare a cheii din tuplul de
referinţă.

Având două relaţii R1 şi R2, o cheie străină este un atribut din R2 dacă şi numai dacă
valoarea sa este identică cu una din valorile cheii candidate (primare) corespondente din R1,
sau să fie NULL. R1 este denumită relaţie-părinte, în timp ce R2 este relaţie-fiu în
corespondenţă cu acest atribut. Uneori se mai întâlnesc termenii de principală sau
secundară, sau altele întâlnite la tipurile de entităţi.

Tipuri de relaţii (legături)


Relaţia una-la-una (1:1). Fiecare entitate dintr-un set S1 este legată de cel mult o entitate
din setul S2 şi vice-versa

Relaţia una-la-mai multe (1:n). Fiecare entitate dintr-un set S1 este conectată la una sau
mai multe entităţi din setul S2 şi fiecare entitate din setul S2 este conectată la cel mult o
entitate din setul S1.(un client ar putea face mai multe comenzi)=> Cele mai frecvente
relaţii

Relaţia mai multe-la-mai multe (n:n sau m:n). Mai multe entităţi din S1 sunt în relaţie cu
una sau mai multe entităţi din S2. Acest tip de relaţie nu este suportat în mod direct de către
modelul relaţional, dar poate fi simulată prin adăugarea unei entităţi intermediare (S 3) între
cele două. În aceste circumstanţe vom avea o relaţie de tip 1:n între S1 şi S3 şi una n:1 între
S3 şi S2.

Regula: acest tip de relatie provoaca probleme in exemplele practice de baze de date
normalizate fapt pentru care aceste tipuri de relatii se sparg in relatii de 1 la mai multi.

Normalizarea
-este un proces imbricat în toate etapă realizării modelului conceptual-trebuie să se
respectate unele condiţii de construirea a modelului astfel încât să fie evitate anumite
anomalii şi inconsistenţe ale datelor.

-este o tehnică de proiectare a bazelor de date prin care se elimină sau se evită anumite
anomalii şi inconsistenţe ale datelor.

O bază de date bine proiectată nu permite ca datele să fie redundante (să se găsească în
locuri diferite) sau să se memoreze în baza de date, date care se pot deduce pe baza altora
memorate în aceeaşi bază de date.
Pentru ca normalizarea să fie realizată, o entitate trebuie să se găsească în cele trei forme
normale:

a) Prima formă normală:

O entitate se găseşte în prima formă normală dacă şi numai dacă:

- nu există atribute cu valori multiple

- nu există atribute sau grupuri de atribute care se repetă

b) A doua formă normală:

O entitate se găseşte în a doua formă normală dacă şi numai dacă se găseşte în prima formă
normală şi în plus, orice atribut care nu face parte din UID va depinde de întregul UID, nu
doar de o parte a acestuia.

REGULĂ: dacă o entitate se găseşte în prima formă normală şi UID-ul său este format dintr-
un singur atribut atunci ea se găseste automat în a doua formă normală.

c) A treia formă normală:

O entitate se găseşte în a treia formă normală dacă şi numai dacă se găseşte în a doua formă
normală şi în plus nici un atribut care nu este partea UID-ului nu depinde de un alt atribut
non-UID.

Deci, nu se acceptă dependenţe tranzitive, adică un atribut să depindă de UID în mod


indirect.

Tipuri de restricţii –constrângeri


=>reguli definite de utilizator

Constrângeri obligatorii în modelul entitate realţie sunt:

1. constrângeri de domeniu ne permit să introducem doar anumite valori care se


potrivesc cu tipul dictat de un anumit atribut (nu vom introduce text, numere sau
imagini la un atribut DataNasterii, definit ca dată calendaristică),

2. integritatea entităţii,- se referă la faptul că niciunul dintre atributele cheii candidate


nu acceptă valori NULL şi în totalitate nu pot fi duplicate (conform definiţiei cheii
candidate);

3. integritatea referenţială - spune că valorile cheii străine dintr-o relaţie-fiu trebuie să


fie una din valorile existente în cadrul cheii primare/candidate din relaţia-părinte,
sau prin excepţie NULL-uri;
Constrângeri opţională în modelul entitate realţie sunt:

 reguli de întreprindere - sunt constrângeri adiţionale definite de proiectantul bazei


de date (data angajării trebuie să fie mai mare decât data naşterii, stocurile de
produse şi preţurile nu pot fi negative etc).

REGULI LA INSERARE

Tabela părinte:

Se poate adăuga orice tuplu, dar cu evitarea duplicatelor şi a valorilor NULL pentru cheia
candidată. În caz contrar se încalcă integritatea entităţii, NU cea referenţială.

Exemplu: În PRODUSE, un nou tuplu poate avea codul C002, S003 etc., dar nu C001, S001
sau S002, şi nici NULL.

Tabela fiu:

Regula de restricţionare spune că nu putem insera un tuplu care să aibă o valoare a cheii
străine pe care să n-o regăsim printre valorile cheii candidate, dar poate fi în mod
excepţional NULL. Exemplu: În VANZARI, se poate introduce orice înregistrare având C001,
S001, S002, sau NULL în Cod, dar nimic altceva. Introducând spre exemplu C002, ar însemna
că intenţionăm să vindem un produs inexistent. Setând regula de restricţie la inserare se vor
stopa astfel de încercări.

REGULI LA ŞTERGERE/ACTUALIZARE

Tabela părinte:

Putem şterge/actualiza orice tuplu care nu este conectat la vreun tuplu din tabela-fiu, dar cu
respectarea integrităţii entităţii în cazul actualizărilor. Această „conectare” se traduce în
acest caz particular ca „efectuarea a cel puţin unei vânzări din produsul respectiv”.

Regula de restricţionare

Se va interzice orice încercare de ştergere/actualizare a vreunui tuplu care este în legătură


cu orice tuplu din tabela-fiu. Exemplu: Tuplele #1 şi #3 nu pot fi şterse/actualizate.

Regula de cascadare

Dacă un astfel de tuplu este şters/actualizat, atunci toate tuplele din tabela-fiu cu care
acesta relaţionează, vor fi la rândul lor actualizate/şterse. Exemplu: În cazul în care se va
şterge înregistrarea #3 din PRODUSE, atunci înregistrările #2-#4 din tabela VANZARI vor fi
şterse automat. Atunci când valoarea cheii candidate dintr-un astfel de tuplu se
actualizează, atunci toate valorile cheii străine corespondente din tabela-fiu, vor fi şi ele
automat actualizate.

Tabela fiu:

În ceea ce priveşte ştergerea, nu există nicio restricţie, putând şterge orice tuplu. Exemplu:
În VANZARI se poate şterge înregistrarea #1, pentru care codul este N001; la fel oricare din
celelalte înregistrări. Se poate actualiza orice valoare a vreunei chei candidate, însă noua
valoare trebuie să fie, fie una din valorile cheii candidate corespondente din tabela-părinte,
fie NULL.

Microsoft Office Access


-o componentă din pachetul Microsoft Office;

-apariţie 1995 până în prezent;

Microsoft Office Access 201* este un sistem de gestiune a bazelor de date (SGBD) dezvoltat
de firma Microsoft care oferă următoarele facilităţi:

1. Are o compatibilitate destul de bună cu SQL-ul, dar fără posibilitatea de


implementare a declanşatorilor şi procedurilor stocate;

2. Access furnizează un mediu de programare puternic prin ale sale formulare şi


rapoarte conduse de evenimente, ce utilizează VBA;

3. Are o interfaţă-utilizator prietenoasă;

4. Suportă şi gestionează componente OLE DB, ADO, ADOX în vederea integrării


componentelor Access cu celelalte tehnologii Microsoft;

5. Este capabil să gestioneze documente HTML, XML. Această facilitate ajută la crearea
aplicaţiilor de baze de date cu interfaţă web;

6. Includerea de filtre şi convertoare pentru familia de produse xBASE Visual Basic for
Applications; GUI – Graphic User Interface

Moduri de lucru

1.Interfaţa vizuală- folosi opţiunile/comenzile din meniuri sau file, dar poate apela şi la o
serie de instrumente vizuale – constructori, manageri/gestionari, generatoare, sau
proiectanţi – sau instrumente de asistenţă interactivă (de tip wizard sau instrumente de
proiectare rapidă)
2.Utilizarea de modele predefinite/şabloane. Utilizatorul poate prelua un exemplu
funcţional, pe care poate apoi să-l personalizeze nevoilor sale.

Aceste modele predefinite se pot găsi în C:\Program Files\Microsoft


Office\Templates\1033\Access\ pentru Access.

3.Folosirea comenzilor. comenzi SQL (Structured Query Language)

4.Programe- poate fi combinat cu cel vizual, atunci când realizăm aplicaţii, meniuri,
formulare, sau pentru elemente de complexitate superioară sau personalizări

Tipul de dată Utilizat pentru a stoca Limitări/Restricții


Access
Date alfanumerice
Text Stochează până la 255 caractere.
(text și numere)

Stochează până la 2 GO de date (limita de dimensiune pentru toa


Date alfanumerice
Memo date poate micșorează viteza de operare a bazei de date. Maxim d
(text și numere)
de tabel și în orice controale pe care le legați la câmp

se utilizează o setare Dimensiune câmp, care controlează dimensiu


Number Date numerice
câmpul. Se poate seta dimensiunea câmpului la 1, 2, 4, 8 sau 16 oct

Date/Time Date și ore Access stochează toate datele ca numere întregi pe 8 octeți cu dubl

Currency Date monetare Stochează date ca numere de 8 octeți cu precizie de patru zecimale

Valori unice create de


AutoNumber Stochează date ca valori pe 4 octeți; utilizat de obicei pentru cheile
Access
Date de tip Boolean
Yes/No Access utilizează -1 pentru toate valorile Da și 0 pentru toate valoril
(adevărat sau fals).

Imagini, documente,
grafice și alte obiecte Stochează până la 2 GO de date (limita de dimensiune pentru toate
obiect OLE creează imagini bitmap ale documentului original sau a
Obiect OLE din programele Office
acea imagine bitmap în câmpurile din tabel și în controalele rapo
și cele bazate pe date.
Windows
Stochează până la 1 gigaoctet de date.Se stochează linkuri către sit
Hyperlink Adrese Web un intranet sau dintr-o rețea LAN (Local Area Network) și către si
dvs.

Prezentare Microsoft Access:


cu MS Office 2013, interfaţa clasică bazată pe meniuri a fost înlocuită cu interfaţa

Microsoft Office Fluent bazată pe acea zonă orizontală denumită panglică (ribbon), care
conţine anumite file (tab-uri) obligatorii sau contextuale, în cadrul cărora avem grupuri de
opţiuni/comenzi.

Componentele unei baze de date (tabele,interogări, formulare, rapoarte, pagini de acces la


date, macrocomenzi, module Visual basic) sunt memorate într-un fişier cu extensia

.accdb.

SETĂRI CARACTERISTICE CÂMPULUI

• FORMAT- permite alegerea unor formate prestabilite sau crearea unui format
personalizat pentru tipul de dată ales.

• DECIMAL PLACES -stabileşte numărul de zecimale între 0-15.

• INPUT MASK -se aplică tipului text şi dată calendaristică un format personalizat de
afişare. Ex.Tel.(0262)655-224.

• CAPTION -nume atribuit cîmpului la vizualizare(diferit de cel intern,deja atribuit).

• DEFAULT VALUE -valoarea inclusă implicit, înainte de actualizarea câmpului

• VALIDATION RULE - regula de validare testată pe baza criteriului definit sub forma
unei expresii. Acestea folosesc:

• Operatori: = ,- ,*, /, Mod ,< ,> ,≤ ,≥ ,AND,OR ,BETWEEN ,IN ,IS NULL.

• Indentificatori: în paranteze drepte [ ].

• Funcţii.
• Constante.

• VALIDATION TEXT -mesajul care apare în cazul nerespectării regulii de validare.

• REQUIRED -se stabileşte la yes dacă este strict necesară completarea acestui câmp.

• INDEXED - se alege opţiunea pentru un index neduplicat (primar) sau duplicat .


Câmpul indexat este util în operaţiile de căutare în baza de date.

FILTAREA

Un filtru este o restricție care se pune înregistrărilor unei tabele, unei forme sau unui raport
pentru a afișa doar anumite înregistrări specificate.

Filtrarea micșorează temporar numărul de înregistrări afișate, conform criteriilor de selecție.

INDEX

Indexurile accelerează căutarile, catalogând conținutul unui anumit câmp.

Câmpul cheie primară este indexat în mod automat.

Se pot crea indecși și pentru câmpurile ce nu sunt cheie primară dar se folosesc la căutări,
sortări sau filtrări

Nu se poate indexa un camp ale cărui date sunt de tip Memo, Hyperlink sau obiect OLE

Filtrarea datelor
-vizualizarea unui sub-set al înregistrărilor tabelă, bazată pe un anumit criteriu

Un filtru se poate aplica în trei moduri:

1.Filtrare prin selecţie sau prin excluderea selecţiei;

2.Filtrare prin formular;

3.Filtrare/sortare avansată

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