1.2.

Conceptele de Dată şi Fişier
Apariţia şi dezvoltarea rapidă a bazelor de date se datorează unei multitudini de factori de natură tehnică şi socioeconomică. Creşterea necesarului şi implicit a consumului de informaţie a avut ca prim rezultat creşterea cantităţii de informaţie stocată pe suporturi de memorare externă şi optimizarea tehnicilor de stocare şi regăsire a informaţiei. Chiar de la primele aplicaţii informatice realizate cu ajutorul calculatorului s-a pus problema utilizării unor tehnici eficiente de organizare, stocare şi regăsire a datelor. O informaţie codificată şi stocată pe un suport de memorare reprezintă ceea ce numim „dată”. Din punctul de vedere al prelucrării de calculator, în cadrul aplicaţiilor, datele se definesc cu ajutorul unui nume (identificator), a atributelor pe care le are şi de o valoare. Rezolvarea problemelor concrete cu ajutorul calculatorului presupune definirea unui algoritm adecvat pentru rezolvarea fiecărei probleme. Un algoritm este definit ca fiind o succesiune finită, corect definită şi fără ambiguităţi de operaţii elementare care se aplică asupra unei mulţimi de date de intrare pentru a se obţine un rezultat. Algoritmul trebuie sa conducă la acelaşi rezultat de fiecare dată când se aplică asupra aceleaşi mulţimi de date de intrare. Calculatorul prelucrează doar date reprezentate cu ajutorului unui cod binar, motiv pentru care datele sunt din punctul de vedere al calculatorului şiruri de cifre binare, de biţi. Semnificaţia şirurilor de biţi depinde de codul pentru codificarea informaţiei, de modul de utilizare a acesteia de către programator în cadrul aplicaţiei informatice şi de limbajul de programare folosit. Fiecare limbaj de programare are reguli specifice pentru definirea şi utilizarea datelor. Organizarea datelor reprezintă procesul de identificare, definire, evaluare, structurare şi memorare a informaţiilor, în cadrul unui sistem informaţional. Prin organizarea datelor se realizează gruparea datelor în colecţii de date omogene, se stabilesc care sunt relaţiilor dintre date, dintre elementele colecţiilor şi dintre colecţii, precum şi modul de stocare a datelor pe suportul fizic de memorare. Datele pot fi clasificate în funcţie de modul de alocare al memoriei, astfel existând date de tip static şi date de tip dinamic. La datele de tip static, memoria este alocată la începutul execuţiei programului, rămânând ocupată de respectivele date pe întreaga durată a execuţiei, pe când la datele de tip dinamic memoria este alocată în momentul execuţiei programului, existând instrucţiuni care permit alocarea memoriei atunci când datele sunt necesare şi alte instrucţiuni care permit eliberarea respectivei zone de memorie în momentul în care datele nu mai sunt necesare. Datele trebuie privite sub două aspecte: fizic şi logic. Din punct de vedere fizic, în cazul stocării şi prelucrării cu ajutorul calculatorului datele sunt şiruri de biţi. Din punct de vedere logic, datele au o anumită semnificaţie şi sunt de mai mult tipuri, funcţie de semnificaţia lor. Datele pot fi simple (elementare), respectiv compuse (structurate). Datele simple (elementare) sunt date independente unele de altele din punctul de vedere fizic, adică al reprezentării pe suportul de memorare, chiar dacă din punct de vedere logic există interdependenţe. Tipul de dată precizează care sunt valorile datei. Dacă pe parcursul procesului de prelucrare data păstrează aceeaşi valoare este numită dată constantă. Pentru datele constante se utilizează ca identificator valoarea acestora. Dacă valorile datei sunt modificate în timpul procesului de prelucrare datele se numesc date variabile sau variabile. În mod uzual pentru date elementare se folosesc ca tipuri de dată: - tipul numeric – include numerele întregi, reale si complexe având diferite reprezentări (virgulă fixă, virgulă mobilă, precizie simplă, precizie dublă, etc.). Asupra lor se pot realiza operaţii de adunare, scădere, înmulţire, împărţire etc.; - tipul logic (boolean) – utilizat pentru reprezentarea valorilor logice “Adevărat”, respective “Fals” cu ajutorul unor valori numerice, asupra acestora putându-se efectua operaţii logice precum negaţia, conjuncţia, disjuncţia; - tipul caracter (text, string) – permite reprezentarea unor succesiuni de caractere folosind mulţimi de simboluri alfanumerice, reprezentarea pe suporturile de memorare utilizând codul ASCII. Asupra acestora se pot defini operaţii de căutare, concatenare, ordonare; - tipul dată calendaristică, timp (Date, Time, DateTime) – reprezentarea internă a acestora făcându-se de regulă cu ajutorul unor valori numerice. Datele compuse numite şi structuri de date sunt colecţii (mulţimi) de date elementare între care există relaţii structurale, omogene din punct de vedere al descrierii şi al prelucrării. Componentele unei structuri formează un întreg astfel încât prelucrarea se poate face atât la nivelul structurii de date cât şi la nivelul fiecărei componente, care poartă numele de câmp. Majoritatea limbajelor de programare operează cu două categorii de structuri: structuri interne şi structuri externe.

1

Structurile de date interne se referă la modul de amplasare în memoria internă a datelor elementare aparţinând unei colecţii. În această categorie sunt incluse structurile de tip tablou (masiv), înregistrare (articol), mulţime, lista şi arbore. Structurile externe se referă la modul de memorare a datelor pe suporturi de memorare externă. Din această categorie fac parte fişierele şi bazele de date. Datele, văzute iniţial ca şiruri de caractere, care reproduceau caracteristicile unor obiecte, fenomene, fapte, evenimente, respectiv concepte din lumea reală, datorită factorului de repetare au fost organizate în structuri care poartă numele de fişier. Fişierul este o structură care grupează date dintr-un anumit domeniu care au anumite caracteristici comune. Fişierele pot fi cu organizare definită, respectiv nedefinită. Accesul la datele ce formează fişierul depinde de structura ce defineşte fişierul, adică de organizarea datelor şi de suportul de memorare. Există doi parametrii ce măsoară performanţele accesului la date: cantitatea de date transferată şi timpul de răspuns. Suportul de memorare poate fi adresabil sau nu, poate fi reutilizabil sau nu, poate fi magnetic, optic sau de altă natură. Accesul la date poate fi secvenţial sau direct. Accesul direct este permis doar de suporturile de memorare adresabile, adică acele suporturi de memorare care permit accesul direct pe baza unei adrese la o anumită zonă de pe suportul de memorare, numită locaţie sau bloc. Principiile de organizare a fişierelor şi tehnicile de regăsire a datelor stocate în fişiere reprezintă o transpunere în cadrul aplicaţiilor informatice a tehnicilor utilizate în sisteme de prelucrare manuală a informaţiei. Fişierul fiind o colecţie de date trebuie considerat ca având două structuri distincte suprapuse, şi anume, o structură fizică şi una logică, cea logică fiind dată de semnificaţia datelor. Din punct de vedere fizic fişierul este o colecţie finită de înregistrări fizice, iar din punctul de vedere al semnificaţiei, o colecţie de înregistrări logice, numite şi articole. Fişierul ocupă un anumit spaţiu pe suportul de memorare extern, spaţiul alocat putând fi continuu sau nu. Componentele sistemului de operare gestionează în mod transparent alocarea fizică pe suportul de memorare externă precum şi accesul la fişiere. Din punctual de vedere al sistemului de operare fişierul are un nume şi eventual o extensie de fişier, are asociată o mulţime de atribute care depind de sistemul de operare (Read Only, Hidden, System, Archive, etc); informaţii privind momentul creării, al ultimei modificări, al ultimei accesări, privind dimensiunea ca număr de octeţi etc. Extensia oferă sistemului de operare informaţii privind conţinutul fişierului. Din punctul de vederea al aplicaţiilor fişierul are un conţinut informaţional, un anumit mod de organizare, permite unul sau mai multe moduri de acces etc. Datele într-un fişier sunt structurate în înregistrări. Organizarea înregistrărilor într-un fişier poate fi privită atât ca organizare logică cât şi ca organizare fizică. Din punctul de vedere al organizării fizice datele ce formează fişierul sunt structurate în înregistrări fizice. Organizarea fizică reprezintă o organizare internă care depinde de resursele fizice ale calculatorului şi este supusă rigorilor sistemului de operare. Înregistrarea fizică reprezintă numărul de octeţi care se transferă între memoria internă a calculatorului şi suportul de memorare extern (scriere), respectiv de pe suportul extern în memorie (citire). Pentru optimizarea transferului se folosesc zone de memorie numite zone tampon, sau buffer, prin intermediul cărora se transferă mai multe înregistrări fizice vecine cu înregistrarea de care este nevoie. Din punct de vedere al organizării logice datele conţinute într-un fişier sunt structurate în înregistrări logice. În principiu, un fişier conţine acelaşi tip de înregistrări logice, dispuse într-o anumită ordine. Mulţimea înregistrărilor logice conţinute într-un fişier reprezintă o mărime finită şi caracterizează, în mod direct, mărimea oricărui fişier. Din punct de vedere al utilizatorului, înregistrarea logică reprezintă şi unitatea de acces la datele conţinute într-un fişier. Organizarea logică a înregistrărilor în fişier, ca mod de organizare externă a datelor, este impusă de natura aplicaţiilor şi cerinţele de prelucrare. Datele conţinute într-o înregistrare logică caracterizează o entitate informaţională, se referă la o clasă de obiecte, fenomene, procese etc., în timp ce datele ce formează o înregistrare fizică caracterizează o unitate de stocare fizică pe suportul de memorie a calculatorului. Utilizatorul operează cu concepte, privind organizarea datelor, la nivel logic, în vreme ce sistemul de operare stochează şi manipulează datele, pe suportul de memorie, numai la nivel de înregistrare fizică. În funcţie de natura şi complexitatea datelor, lungimea unei înregistrări logice poate să corespundă sau nu cu lungimea unei înregistrări fizice. O înregistrare fizică poate să conţină mai multe înregistrări logice, respective o înregistrare logică poate fi stocată în mai multe înregistrări fizice.

2

1.3. De ce baze de date?
Totalitate informaţiilor care definesc şi menţin în funcţiune un sistem real formează sistemul informaţional al sistemului real, iar în cadrul sistemului informaţional putem delimita sistemul informatic, care reprezintă acea parte a sistemului informaţional în care informaţia este stocată şi procesată cu ajutorul tehnicii de calcul. Sistemele informatice pot fi realizate fie cu ajutorul unor aplicaţii care utilizează fişiere independente sau integrate, fie cu ajutorul unor aplicaţii care accesează o structură complexă numită bază de date. Baza de date are mijloace proprii pentru crearea şi evoluţia în timp a structurii. Organizarea datelor în fişiere aparţinând fiecărei aplicaţii reprezintă o metodă rigidă care are mai multe dezavantaje pentru utilizatori. Cel mai mare dezavantaj este acela că modificările în structura unui fişier obligă la modificarea tuturor programelor care utilizează fişierul a cărui structură a fost modificată. Din punctul de vedere al utilizatorului sistemele bazate pe fişiere reprezintă un progres extraordinar faţă de sistemele manuale, totuşi acestea fiind dependente de programele de aplicaţie, orice interogare necesită scrierea unui program şi integrarea acestuia în sistemul implementat, obţinerea de noi informaţii spontan fiind practic imposibilă. Realizarea sistemelor informatice cu ajutorul aplicaţiilor independente presupune ca fiecare astfel de aplicaţie să definească şi să întreţină propriile structuri de date organizate de regulă în fişiere. În acest caz are loc separarea şi izolarea datelor, precum şi legarea acestora de fiecare aplicaţie. Datorită modului de abordare descentralizat are loc o creştere a redundanţei datelor, adică datele vor fi multiplicate necontrolat. Redundanţa reprezintă o proprietate a unei colecţii de date care se referă la faptul că unele componente ale colecţiei de date sunt memorate de mai multe ori pe suportul de memorare. Multiplicarea datelor implică costuri suplimentare şi în plus, creşte riscul alterării integrităţii datelor, adică apariţia de neconcordanţe. În cazul sistemelor reale complexe creşterea redundanţei are ca efect apariţia de erori frecvente datorate neconcordanţei informaţiilor memorate în fişiere aparţinând unor aplicaţii diferite, rezultând costuri de actualizare mărite corespunzător. Sistemului informatic are două componente principale şi anume datele şi programele, acestea fiind într-o strânsă interdependenţă. În codul program al fiecărei aplicaţii creat într-un limbaj de programare clasic se definesc structurile de date, atât cele interne ale aplicaţiei respective cât şi structura logică a fişierelor utilizate de aplicaţia respectivă, împreună cu modul de acces la datele stocate în aceste fişiere. În cazul în care structura logică a unei înregistrări este modificată prin adăugarea unui câmp, sau schimbarea dimensiunii unui câmp, toate programele care operează cu fişierul a cărui structură a fost modificată trebuie actualizate. De asemenea orice modificare a semnificaţiei, respectiv a modului de reprezentarea a informaţiei respective în sistemul real impune modificarea tuturor aplicaţiilor care folosesc informaţia respectivă, ceea ce reprezintă în cazul sistemelor informatice complexe un efort de programare considerabil, precum şi costuri ridicate. Această caracteristică a sistemelor bazate pe fişiere este cunoscută sub denumirea de dependenţă program-date. Deoarece structura fişierului este încorporată în programele de aplicaţie, ea este dependentă de limbajul în care sunt scrise programele în este realizată aplicaţia respectivă. Atunci când datele sunt izolate în fişiere aparţinând unor aplicaţii independente, accesarea datelor de care este nevoie la un moment dat se realizează cu mare greutate deoarece programatorul trebuie să sincronizeze prelucrarea simultană a tuturor fişierelor aplicaţiilor, dificultatea crescând odată cu numărul de fişiere. Structura fişierelor este încorporată în programele de aplicaţie, fiind dependentă de limbajul de programare folosit pentru fiecare aplicaţie. Mai mult chiar, fiecare interogare a fondului de date stocate în fişierele independente se realizează doar prin intermediul programelor de aplicaţie, interogarea fiind dependentă de programatorul care a realizat aplicaţia şi chiar mai mult de limbajul de programare folosit. În sistemele complexe, odată cu creşterea necesarului de informaţie există riscul ca satisfacerea necesarului de informaţie prin noi programe să nu poată fi realizată într-un timp optim. Reducerea timpului alocat analizei precum şi proiectării de noi aplicaţii are ca rezultat obţinerea de programe inadecvate sau ineficiente pentru îndeplinire cerinţelor utilizatorilor, de regulă cu o documentaţie limitată şi greu de întreţinut. În astfel de condiţii securitatea datelor devine limitată, iar integritatea datelor est practic imposibil de asigurat. Limitele sistemelor bazate pe fişiere independente se datorează următorilor doi factori: - definiţia datelor este încorporată în programele de aplicaţie, - controlul accesului şi cel al manipulării datelor se realizează exclusiv prin intermediul programelor de aplicaţie. Pentru a fi eficient un sistem informatic este necesară o nouă abordare care să scoată în afara programelor de aplicaţie definirea, controlul şi manipularea datelor. Aceasta se poate realiza cu ajutorul bazei de date şi a sistemului de gestiune a bazelor de date.

3

2.2. Conceptul de bază de date
Pentru conceptul de bază de date există un număr foarte mare de definiţii, adesea contradictorii, cu atât mai mult cu cât conceptul a fost în continuă evoluţie. Baza de date: - reprezintă o colecţie partajată de date, între care există relaţii logice (şi o descriere a acestor date), proiectată pentru a satisface necesităţile informaţionale ale unei organizaţii; - este o colecţie de date operaţionale folosite de către aplicaţiile sistem ale unei organizaţii; - este un ansamblu structurat de date coerent, fără redundanţă inutilă, astfel încât aceasta pot fi prelucrate eficient de mai mulţi utilizatori într-un mod concurent; - reprezintă un ansamblu de date înregistrate pe suporturi accesibile calculatorului pentru a satisface simultan mai mulţi utilizatori de o manieră selectivă şi într-un timp oportun; - se defineşte ca un ansamblu de date elementare sau structurate, accesibile unei comunităţi de utilizatori. Baza de date este un ansamblu structurat de date legate structural între ele, un depozit de date unic definit o singură dată şi utilizat simultan de mai mulţi utilizatori. Baza de date este o resursă comună şi partajată. Baza de date conţine nu numai date ci şi descrierea acestora. Descrierea datelor este cunoscută sub denumirea de dicţionar de date (catalog de sistem, sau meta-date) şi reprezintă date despre date. Prin faptul ca baza de date conţine şi descrierea datelor se realizează independenţa program - date. Baza de date realizează separarea definiţiei datelor de programele de aplicaţie. Prin această abstractizare a datelor devine posibilă modificarea definiţiei unei date fără a afecta utilizatorii acesteia cu condiţia ca semnificaţia datei respective, adică definiţia externă a acesteia, să rămână aceeaşi. Ceea ce este important de reţinut referitor la conceptul de bază de date este aceea că el nu poate fi definit complet decât dacă se au în vedere două unghiuri de vedere diferite şi legătura dintre acestea: - caracteristicile bazei de date din punctul de vedere al utilităţii în cadrul sistemului real în care se implementează, respectiv locul şi rolul bazei de date în cadrul sistemului informaţional-decizional, schema externă, nivelul extern (viziunea externă); - caracteristicile tehnice ale bazei de date, respectiv locul şi rolul bazei de date în cadrul sistemului de prelucrarea datelor, schema internă, nivelul intern (viziunea internă); - legătura dintre cele două viziuni, cea externă şi cea internă este realizată de schema conceptuală (nivelul conceptual), care are rolul de a constitui schema logică a întregii baze de date, adică reprezintă o imagine completă a cerinţelor organizaţiei privind datele, fiind independentă de orice consideraţii privind stocarea. Standardizarea în domeniul bazelor de date s-a impus de la începutul anilor 70 impunându-se pentru baza de date trei niveluri de abstractizare, adică trei niveluri distincte la care pot fi descrise datele. Aceasta formează o arhitectură cu trei niveluri, cuprinzând un nivel extern, unul conceptual şi unul intern. Pentru fiecare nivel se defineşte o schemă corespunzătoarea a bazei de date. Obiectivul arhitecturii cu trei niveluri este separarea vederii fiecărui utilizator asupra bazei de date de modul în care ea este reprezentată fizic. Viziunea utilizatorului individual se numeşte vedere externă sau model extern, la nivel extern existând o mulţime de vederi externe, de sub-scheme externe, corespunzătoare fiecărui utilizator individual. O vedere externă poate fi considerată ca fiind din punctul de vedere al utilizatorului individual conţinutul bazei de date, adică ceea ce „vede” el din baza de date. Acest nivel descrie acea parte a bazei de date care este relevantă pentru fiecare utilizator schema externă fiind formată din mulţimea de sub-schemelor externe. Schema conceptuală este o reprezentare a tuturor informaţiilor conţinute de baza de date într-o formă abstractă. Ea reprezintă o viziune, o vedere a datelor aşa cum sunt ele în realitate, fără a ţine cont de modul în care vede datele fiecare utilizator. Nivelul conceptual reprezintă o vedere generală a bazei de date. Acest nivel descrie ce date sunt stocate în baza de date şi relaţiile dintre acestea. Pentru o bază de date există o singură schemă conceptuală. Vederea internă precizează modul în care se memorează efectiv datele ce formează baza de date şi este descrisă de schema internă a bazei de date. Nivelul intern este reprezentarea fizică a bazei de date pe calculator. Acest nivel descrie cum sunt stocate datele în baza de date precum şi metodele de acces, criteriile de ordonare şi regăsire pe baza unor criterii de performanţă şi flexibilitate care asigură performanţe optime. Pentru baza de date există o singură schemă externă. Pentru a stabili corespondenţa între fiecare schemă externă şi schema internă, în cadrul bazei de date există mecanisme care folosesc informaţiile din schema conceptuală. Fiecare sub-schemă externă este o imagine a schemei conceptuale.

4

2. la un moment dat. Cele mai cunoscute tipuri de modele de date bazate pe obiecte sunt modelul Entitate . Mulţimea de valori concrete stocate. care cuprinde regulile de definire a datelor. Un atribut (attribute) este o proprietate care descrie un aspect oarecare al obiectului pe care dorim să îl definim. Atributele pot fi simple sau compuse. modelul funcţional şi modelul orientat spre obiecte. a relaţiilor dintre date şi a constrângerilor asupra datelor dintr-o organizaţie. legăturile dintre date şi regulile care asigură coerenţa datelor. necesare descrierii datelor. un obiect despre care dorim să înregistrăm informaţii. Numim cheie candidat atributul sau mulţimea de atribute ale unei entităţi care identifică în mod unic apariţiile individuale ale unui tip de entitate. şi anume o componentă structurală. O cheie candidat formată din mai multe atribute va fi numită cheie compusă. Schema bazei de date este definită în cursul procesului de proiectare a bazei de date. iar la nivel fizic modele de date fizice. o corespondenţă între două sau mai entităţi. permite o reprezentare a unui sistem real. Atributul compus este format din mai multe componente. o comunicare. Pentru o bază de date există trei tipuri diferite de scheme care sunt în concordanţă cu nivelurile de abstractizare ale arhitecturii bazei de date. O relaţie este caracterizată prin gradul relaţiei. Fiecare atribut reprezintă o caracteristică semnificativă. Un model de date este definit sub trei aspecte.3. potenţiale. atributele având rolul de a defini conţinutul unei identităţi. atribut şi relaţie. Un atribut poate avea o singură valoare. Relaţia exprimă raportul existent între respectivele entităţi şi există doar dacă entităţile există. Pe baza unor consideraţii privind pricind caracterul unic. Modelul Entitate – Relaţie reprezintă un model de date conceptual de nivel înalt. O valoare a unei relaţii este o comunicare între valorile entităţilor pe care le leagă. care formează un domeniu de valori. Entităţile similare care pot fi descrise prin aceleaşi atribute formează un tip de entitate (entity type). Entităţile implicate într-o anumită relaţie se numesc participanţi în relaţie. o instanţă a respectivei entităţi. iar celelalte vor fi numire chei alternative. modelul semantic. precum şi tranzacţiile de regăsire. neformalizat. grupând elementele sistemului real în entităţi şi asocieri (legături) între entităţi. Numim tip de relaţie o asociere semnificativă între tipuri de entităţi. concept. care exprimă numărul de entităţi participante. Analiza necesităţilor informaţionale ale unei organizaţii presupune identificarea entităţilor. Entitatea este descrisă de atributele sale relevante.Relaţie. cu ajutorul căruia se reprezintă o organizaţie. O relaţie în care o anumită entitate participă mai mult decât o dată având roluri diferite se numeşte relaţie recursivă. Un tip de relaţie are asociată o anumită funcţie. loc. Modelarea baze de date Numim model de date o colecţie integrată de concepte. care defineşte tipurile de operaţii permise asupra datelor şi o mulţime de reguli care garantează integritatea şi coerenţa datelor. precum şi de structura cheilor candidat din mulţimea de chei candidat se alege o cheie candidat care va fi numită cheie primară. activitate. Pentru fiecare atribut există o mulţime de valori posibile. Fiecare prezenţă unic identificabilă a unui tip de relaţie se numeşte relaţie. Prin valori concrete date atributelor ce definesc o entitate se obţine o realizare. Pentru modelarea datelor la nivel conceptual şi extern se folosesc modele de date bazate pe obiecte şi modele de date bazate pe înregistrări. o apariţie. Din punctul de vedere al numărului de mulţimi de entităţi 5 . Atributul simplu are o singură componentă cu existenţă independentă. Descrierea generală a bazei de date se numeşte schema bazei de date şi vizează structurile de date. Modelarea conceptuală presupune realizarea unui model de date pentru informaţiile care există în cadrul unei organizaţii independent de detaliile de implementare. cât şi comportamentul prin acţiunile asociate. care descrie structura bazei de date. Acest model. Un tip de entitate poate avea mai multe chei candidat.Trebuie să se facă distincţie între descrierea bazei de date. o componentă de manipulare datelor. Numim relaţie (relationship) o asociere. respectiv de reactualizare asociate. care constituie schema bazei de date şi baza de date însăşi. Obiectul încapsulează starea şi comportamentul. care este semnificativ pentru sistemul real. Datele reale din baza de date pot fi modificate frecvent. O Entitate (entity) este un obiect care poate fi identificat în mod distinctiv (persoană. fiecare având o existenţă independentă. Modelul de date este o reprezentare abstractă a obiectelor şi a evenimentelor lumii reale şi a asocierilor dintre acestea. Modelele de date bazate pe obiecte utilizează conceptele: entitate. Modelul de date orientat spre obiecte extinde definiţia conceptului entitate în sensul că se descrie atât starea prin atribute. iar colecţia formată din toate entităţile de acelaşi tip formează o mulţime de entităţi (entity set). modificările ulterioare fiind nesemnificative. eveniment). sau mai multe valori pentru o anumită entitate. Este posibil ca valoarea unui atribut să fie derivabilă din valoarea unui alt atribut sau din valorile mai multor atribute ale respectivei entităţi sau ale altor entităţi. se numeşte instanţă a bazei de date. a atributelor acestora şi a relaţiilor dintre entităţi.

Toate regulile de afaceri din sistemul real trebuie identificate şi reprezentate în modelul de date. realizarea independenţei structurilor de stocare în raport cu structurile de date din sistemul real. Asocierile binare sunt de trei tipuri după numărul elementelor din fiecare dintre cele două mulţimi puse în corespondenţă: . 2. Datele sunt stocate în structuri complexe numite baze de date. respectiv multiple. Prin constrângerile de participare se stabileşte Atunci când existenţa unei entităţi depinde de o altă entitate de care este legată printr-o relaţie spunem că există o constrângere de participare. Baza de date este o transpunere fizică.4. Independenţa fizică – reprezintă obiectivul esenţial. aşa cum sunt ele în sistemul real. Fiecare grup poate să cunoască doar o parte a semanticii datelor. Există două tipuri de constrângeri asupra relaţiilor.participante entităţile pot fi binare.mai multe (many-to-many) .asocierea unul .unul (one-to-one). Utilizatorul poate obţine informaţii din baza de date fără să cunoască în întregime organizarea complexă a bazei de date. numire constrângeri de cardinalitate şi constrângeri de participare. Constrângerile care pot fi impuse entităţilor participante într-o relaţie trebuie să reflecte restricţiile asupra relaţiilor. Manipularea datelor direct de către utilizatorul final – face ca datele să fie văzute de utilizatori independent de implementarea datelor în baza de date şi pot manipula datele cu ajutorul unor limbaje ne-procedurale foarte apropiate de limbajul natural. Constrângerea de participare poate fi totală (obligatorie) atunci când existenţa unei entităţi necesită existenţa unei entităţi asociate printr-o relaţie. respectiv grup de utilizatori are o sub-schemă externă particulară proprie fără a afecta schema generală a bazei de date. fiecare grup de utilizatori putând să-şi modifice propria sub-schemă fără a afecta schema conceptuală. Obiectivele datelor în baze de date Datele reprezintă suportul real pentru informaţia necesară subsistemului de decizie. 2. respectiv constrângere de participare este parţială (opţională) atunci când constrângerea nu condiţionează când existenţa entităţii. - asocierea mai multe – la . adică orice modificare organizării interne a datelor şi a structurilor de înregistrare nu va afecta programele de aplicaţie. Regulile care definesc cardinalitatea sunt numite reguli de afaceri. care conţine entităţile. luând în considerare doar accesul rapid la date cu performanţe prestabilite.unul (many-to-one). în calculator. şi anume.mai multe (one-to-many) şi mai multe – la . Aceasta se realizează prin asigurarea independenţei fizice a datelor faţă de programele de aplicaţie. 3. să vadă doar o submulţime a datelor şi numai în forma de care are nevoie. atributele ce definesc entităţile şi relaţiile dintre entităţi. Realizarea acestui obiectiv are ca 6 .la . În baza de date mulţimea de date se defineşte fără a ţine cont de forma datelor în sistemul real. a modelului de date. Utilizarea bazelor de date în cadrul sistemelor informatice are următoarele obiective fundamentale din punctul de vedere al datelor: 1. Independenţa logică – presupune că fiecare utilizator. - asocierea unul – la . Schema conceptuală a bazei de date fiind o sinteză a schemelor externe nu va fi afectată de evoluţia în timp a unei sub-scheme particulare.

respectiv distrugeri fizice. Baza de date are mecanisme proprii care permit identificarea şi autentificarea utilizatorilor. Partajabilitatea datelor – permite ca datele să fie partajate între membrii unei organizaţii fiecare utilizator va accesa datele ca şi cum ar fi singur. 10. aceasta fiind o colecţie unică de date împreună cu legăturile logice existente între date. redundanţa.datele vor fi protejate de accesul neautorizat. Duplicarea datelor se păstrează doar pentru a asigura coerenţa bazei de date. Securitatea datelor – baza de date trebuie să fie protejată pentru distrugeri logice prin actualizări eronate. precum şi prin validarea datelor introduse sau actualizate în baza de date. Prin mecanisme proprii de control baza de date va permite accesul concurent la date menţinându-se în acelaşi timp coerenţa datelor. 8. 6. Creşterea cantităţii de informaţii disponibile – prin stocarea în baza de date a datelor generate de un departament al unei organizaţii devine posibilă accesarea lor de toţi membrii organizaţiei. adăugare. fără a şti că în acelaşi timp un alt utilizator va accesa pentru a le modifica. a unor jurnale de urmărire a actualizărilor şi proceduri de refacere a bazei de date. Fiecare utilizator are propriile cerinţe care pot intra în conflict cu ale altor utilizatori. obligă la instituirea unui set de proceduri de autorizare. 5. eliminându-se astfel intermediarul. Administrarea centralizată are rolul de a optimiza performanţele pentru organizaţie luată în ansamblu. 9. Coerenţa şi integritatea datelor – coerenţa datelor se realizează prin verificarea tuturor dependenţelor existente între date în sistemul real. Administrarea este centralizată şi permite o organizare coerentă şi eficace a informaţiei. precum şi realizarea unor copii de siguranţă. Redundanţa minimă se asigură prin tehnicile de proiectare a bazei de date.rezultat îmbunătăţirea accesibilităţii datelor şi a capacităţii de răspuns. Prevenirea distrugerii accidentale a datelor. respectiv modificarea aplicaţiilor aflate deja în funcţiune. Accesul depinde de date şi de utilizatori. Administrarea şi controlul centralizat al datelor – administrarea datelor presupune definirea structurii datelor şi a modului de stocare a datelor. Integritatea datelor se referă la validarea şi coerenţa datelor stocate şi se realizează prin unicitatea datelor. consumatorul de informaţie. Utilizatorul va putea accesa baza de date cel mai adesea prin intermediul unei interfeţe prietenoase în asociere cu un limbaj ne-procedural. 7 . utilizatorul poate obţine toate datele legate logic de o anumită dată pe care acesta o foloseşte. precum şi accesul autorizat şi diferenţiat. iar noua valoare va fi disponibilă instantaneu pentru toţi utilizatorii. bine organizată şi controlată. care permit un dialog simplu şi eficient pentru actualizarea şi exploatarea bazei de date. Prin integrarea datelor devine posibil accesul la date pentru toţi membrii unei organizaţii pentru care o anumită date este semnificativă. locale sau generale. prin utilizarea un limbaj apropiat de limbajul natural să acceseze procedurile de actualizare. dar şi de confirmare a operaţiilor de ştergere. Utilizatorii nu cunosc structura întregii baze de date. 7. Sisteme de gestiune a bazelor de date În cadrul oricărei organizaţii este necesar ca resursa de date să fie bine definită şi documentată. Asigurarea unei redundanţe minime şi controlate a datelor – este al doilea obiectiv major al organizării datelor în baze de date. trebuie redusă la minim şi menţinută sub control. de restaurare a acesteia. indiferent de numărul de utilizatori care o accesează . Informaţia trebuie să satisfacă constrângeri statice sau dinamice. Sistemul informaţional are o mult mai mare funcţionalitate potenţială deoarece prin utilizarea unor instrumente adecvate devine posibilă interogarea ad-hoc a colecţiei de date de către utilizatorul final. dar pot. interogare şi afişarea datelor din baza de date. 4. adică personalul calificat care are menirea de a crea aplicaţia informatică. în caz de incidente. partajabilă şi relevantă pentru deciziile luate în cadrul organizaţiei. Securitatea va fi asigurată prin mecanisme proprii care permit refacerea bazei de date în cazul apariţiei unei erori. Aceasta înseamnă că se urmăreşte pe cât posibil ca fiecare dată să apară numai o singură dată în baza de date. Prin utilizarea bazei de date. Consistenţa datelor este asigurată prin faptul că actualizarea datelor va fi percepută de fiecare utilizator al bazei de date nu doar de utilizatorii care au realizat actualizarea în plus datorită unicităţii datei stocate în baza de date orice actualizare a valorii sale trebuie efectuată o singură date. Acest obiectiv face posibilă dezvoltarea de noi aplicaţii ce necesită poate chiar extinderea. Confidenţialitatea datelor .

manipularea datelor (actualizare şi interogarea bazei de date). poartă numele de sisteme navigaţionale şi au fost dezvoltate în perioada 1960-1970. iar conform principiului moştenirii sau al derivării o clasă poate fi definită folosind o clasă existentă.controlul şi securitatea datelor (controlul integrităţii. În modelele ierarhice şi reţea datele sunt reprezentate la nivel de articol prin legături ierarhice de tip arbore. şi reactualiza datele. SGBD constituie o interfaţă între utilizatori şi baza de date şi constă din programe care interacţionează cu programele de aplicaţie ale utilizatorului şi cu baza de date. Conform principiului încapsulării datelor. În plus SGBD relaţionale pun includ limbaje specializate pentru descrierea şi manipularea datelor. A doua generaţie de SGBD o reprezintă modelul relaţional care tratează entităţile ca relaţii. care sunt programe care se execută în mod automat atunci când în mediul extern sau cel extern al obiectului apare un anumit eveniment. căuta. . să insereze. Obiectivul principal al unui SGBD este de a separa datele de programele de aplicaţie. Modulele program de manipulare a datelor permit utilizatorilor prin intermediul unui limbaj specializat să găsească. active. adică să poată interpreta „comenzile” exprimate în termen de schemă externă. respectiv cel ierarhic. accesul concurenţial şi securitatea datelor). cât şi mulţimea de operaţii care pot fi utilizate pentru al manipula. la cele deductive. cât şi acţiunile asociate acestuia. crearea. Structurile de date corespunzătoare acestor modele pot fi descrise la nivel logic cu ajutorul unei structură de date abstract numit diagramă. . manipularea exploatarea corectă şi facilă a bazei de date. precum şi schemelor externe specifice fiecărei aplicaţii program externe.gestionarea bazei de date. Clasa include definiţia datelor şi a metodelor. Modulele program utilitare permit întreţinerea. Un SGBD are o structură complexă şi include module program specializate pentru a îndeplini anumite funcţiuni: . de operatori care se aplică relaţiilor pentru a defini.sisteme relaţionale. Sistemele de gestiune a bazelor de date bazate pe modelul de date reţea. respectiv de tip graf. Modelul relaţional are capacităţi limitate de modelarea datelor. Conceptul de încapsulare presupune că un obiect conţine atât structura de date. respectiv să elimine datele din baza de date. care se reperă la sistemele orientate obiect. detaliile interne ale unui obiect pot fi modificate fără a afecta aplicaţiile care îl utilizează cu condiţia ca detaliile externe să rămână neschimbate. Obiectul este definit de o mulţime de proprietăţi numite atribute şi are un anumit comportament care în cazul obiectelor folosite în programare se concretizează prin metode.definirea datelor (descrierea datelor). SGBD relaţionale nu folosesc obiecte complexe şi dinamice. Modulele program pentru controlul şi securitate datelor au rolul de a asigura confidenţialitate a şi integritatea datelor.utilitare. etc. care conţine atât atributele care definesc starea unui obiect din lumea reală. să modifice. întreţinerea şi accesul controlat la baza de date. . Modulele program de definirea datelor permit traducerea unui limbaj specializat care realizează descrierea naturii datelor şi a legăturii logice dintre date la nivel global conform schemei conceptuale.sisteme avansate. nu realizează gestiunea distribuită a datelor şi nici gestiunea de cunoştinţe. Sistemele de Gestiunea Bazelor de Date Relaţionale sunt caracterizate de structuri de date simple şi intuitive. Bazele de date relaţionale asigură independenţa completă a descrierii logice a datelor în termeni de relaţii şi în descrierea fizică a datelor în termen de fişiere. datele clasei sunt vizibile doar metodelor clasei. Numim obiect o entitate unic identificabilă.sisteme de tip ierarhic şi de tip reţea. . Modelul relaţional asigură o independenţă completă în ceea ce priveşte descrierea logică şi fizică a datelor. Sistemele SGBD evoluează continuu şi trebuie să se extindă pentru a rezolva eficient noile cerinţe ale utilizatorilor. Ascunderea informaţiilor semnifică separarea aspectelor externe ale unui obiect de detaliile sale interne. care realizează o modelare superioară a informaţiei luând în considerare aspectele 8 . care sunt ascunse de lumea exterioară. precum şi rezolvarea problemelor de concurenţă. SGBD gestionează la nivel conceptual un dicţionar de date. pentru a le transpune prin intermediul schemei conceptuale în operaţii de intrareieşire la nivel fizic. Includerea tehnicilor de programare orientată obiect în domeniul bazelor da date a condus la apariţia Sistemelor de Gestiune a Bazelor de Date Orientate Obiect. SGBD trebuie să asigure trecerea de la un nivel de abstractizare la altul.Sistemul de Gestiune al Bazei de Date (SGBD) reprezintă un pachet de programe specializat pentru definirea. SGBD de tip ierarhic (hierarchical database) şi reţea (network database) reprezintă din punct de vedere istoric primele generaţii de SGBD. Istoria sistemelor de gestiune a bazelor de date delimitează trei generaţii care sunt caracterizate de modelele logice folosite: . În prezent există câteva sute de sisteme SGBD relaţionale pentru toate tipurile de calculatoare. Diagrama este în acest caz un graf orientat prin care se reprezintă tipuri de entităţi şi legăturile funcţionale dintre acestea. Obiectele de acelaşi tip formează o clasă de obiecte care reprezintă o generalizare a noţiunii de tip de dată. . multimedia. Modulele program de gestiune a bazei de date realizează accesul fizic la date în conformitate cu cerinţele exprimate printr-o „comandă”. Conceptul de programare orientată obiect sau programarea calculatoarelor cu ajutorul obiectelor utilizează conceptele de obiect şi clasă de obiecte. . În acest mod.

Pe baza cunoştinţelor se deduc fapte noi prin deducţie plecând de la fapte cunoscute. precum şi transpunerile dintre ele. 3. Sistemul de gestiune al unei baze de date distribuite face posibil accesul programelor de aplicaţie la date rezidente pe mai multe calculatoare fără ca localizarea datelor să fie cunoscută. realizate de un utilizator sau un program de aplicaţie prin care se accesează sau se modifică conţinutul bazei de date. Gestionarea datelor aflate pe calculatoare diferite. denumirile. Codd a enunţat opt servicii listă completată ulterior cu încă două servicii pe care trebuie să le furnizeze un SGBD complet: 1. Funcţiunile sistemului de gestiune al bazei de date Sistemul de gestiune al bazei de date (SGBD) reprezintă o interfaţă între utilizatori şi baza de date. denumirile relaţiilor. permite ca definiţia datelor să fie accesibilă tuturor posibililor utilizatori. Prin utilizarea principiului programării orientate obiect în domeniul bazelor da date relaţionale a apărut Sistemele de Gestiune a Bazelor de Date Relaţionale Orientate Obiect. tipurile şi dimensiunile articolelor de date.dinamice şi integrarea descrierii structurale şi comportamentale. numele utilizatorilor autorizaţi care au acces la date. regăsirea şi reactualizarea datelor reprezintă funcţia fundamentală a unui SGBD. Prelucrarea acestor date se realizează în pe baza unor scenarii de tip procesarea de tranzacţii în timp real (OLTP – On Line Transaction Processing). Integrarea mai multor baze de date autonome şi eterogene conform unei scheme globale cu scopul de a realiza accesul uniform şi integrat la fiecare din bazele de date componente a condus al conceptul de sistem multibază de date. eterogene din punctul de vedere al sistemului de operare folosit se realizează cu ajutorul unei baze de date distribuite. Dacă o tranzacţie eşuează în timpul execuţiei baza de date va intra într-o stare de incoerenţă. Asigurarea tranzacţiilor. actualizarea şi consultarea bazei de date. Un catalog sistem accesibil utilizatorului. statistica utilizării. date despre date. Acesta se realizează printr-un mecanism propriu al SGBD care este capabil să anuleze modificările efectuate asupra bazei de date de tranzacţia eşuată. schemele externe. numite în acest caz rafturi de date (Data Marts). Tranzacţia reprezintă o mulţime de acţiuni. aplicaţii şi reprezintă un depozit de informaţii care descrie datele din baza de date. Necesitatea analizării unor cantităţi foarte mari de date a condus la conceptul de magazie de date (Data Warehouse). Acestea sunt generate şi preluate în sistem în mod dinamic pentru optimizarea procesului de decizie. SGBD va asigura utilizatorului şi a SGBD la un catalog sistem integrat (dicţionar de date . care poate fi folosită în mod pentru elaborarea deciziilor operative. Structurile de date multidimensionale sunt vizualizate cel mai bine sub forma unor cuburi de date şi a unor cuburi în cadrul cuburilor. Stocarea. un limbaj de reguli de deducţie care să permită construirea predicatelor derivate. Cunoştinţele sunt aserţiuni generale şi abstracte asupra faptelor. Magazia de date este proiectată pentru a facilita analiza multidimensională a datelor şi reprezintă un sistem care include informaţii despre o organizaţie structurate în mai multe baze de date. Bazele de date distribuite folosesc ca instrument principal pentru prelucrarea datelor distribuite modelul relaţional.Data Dictionary) care va conţine date despre scheme. Fiecare faţă a unui cub reprezintă o dimensiune. Baza de date analitică permite realizarea de interogări multidimensionale instantanee. un limbaj de manipulare a datelor care permite pe lângă actualizarea datelor şi formularea de cereri. care nu a fost efectuată în întregime ci doar parţial. 9 . constrângerile de integritate asupra datelor. conceptuale şi interne. care utilizează pentru atingerea acestui scop scenarii de tip procesare analitică în timp real (OLAP – On Line Analytical Processing). 2. SGDB trebuie sa ascundă faţă de utilizator detaliile privind implementarea fizică internă. Avantajul major al acestui model constă în faptul că printr-o singură interogare pot fi accesate date din mai multe baze de date fără a afecta aplicaţiile care manipulează datele din fiecare bază de date componentă a sistemului integrat. Pentru a rezolva problema gestiunii de cunoştinţe au apărut bazele de date deductive. utilizatori. O relaţia este o mulţime de înregistrări ce reprezintă fapte. care utilizând programarea logică gestionează cunoştinţe relativ la baze de date. Bazele de date permit stocarea unei cantităţi foarte mari de informaţie.F. Un Sistem de Baze de Date Deductiv posedă un limbaj de definire a datelor care permite definirea structuri predicatelor sub formă de relaţii şi constrângeri de integritate asociate. Bazele de date distribuite sunt sisteme de baze de date cooperante care sunt rezidente pe calculatoare diferite şi situate în locuri în locaţii diferite. În 1982 E. Data Warehouse reprezintă o bază de date proiectată pentru a facilita analiza datelor fiind orientată spre dimensiuni. fără a fi necesar ca acestea sa fie definite anterior. comunicarea fiind simplificată deoarece de sensul exact al datelor este stocat. Catalogul sistem conţine descrierea şi localizarea datelor. Pentru elaborarea deciziilor operative se folosesc date aferente activităţii curente. motiv pentru care este necesar ca baza de date baza de date să fie readusă în stare de coerenţă care a precedat lansarea în execuţie a tranzacţia. date aferente unei perioade scurte de timp. Fiecare bază de date din sistemul integrat poate folosi propriile limbaje de interogare. care permite crearea. dar şi a celor strategice. Sistemele distribuite reprezintă calculatoare interconectate printr-o reţea de comunicaţie utilizate pentru un scop global. Bazele de date multidimensionale reprezintă o modalitate compactă pentru vizualizarea şi manipularea elementelor de date care pot avea multe inter-relaţii. Catalogul sistem permite ca informaţiile despre date să fie colectate şi gestionate central.

Procedurile includ regulile care guvernează proiectarea şi utilizarea bazei de date. Termenul de securitate se referă la protecţia bazei de date împotriva accesului ne-autorizat intenţionat sau accidental. analiză statistică. date. Reprezintă cea mai importantă componentă a unui mediu SGBD şi include atât meta-datele cât şi datele propriuzise. modificarea şi reorganizarea bazei de date. ele nu fac parte din SGBD. 4. 7. Fiecare SGBD impune cerinţe minimale pentru echipamentele fizice necesare funcţionării optime. eliminarea informaţiei perimate etc. Servicii pentru promovarea independenţei de date. proceduri şi persoane. În mediul SGBD se identifică patru tipuri distincte de persoane implicate: administratorii. 8. Servicii de control concurente. SGBD trebuie sa poată fi integrat într-un pachet de programe de comunicaţie din care va primi cereri sub formă de mesaje şi va răspunde în acelaşi mod. care reprezintă reguli de coerenţă pe care baza de date trebuie să le respecte. Persoane. Administratorul de date (Data Administrator) gestionează resursele de date. SGBD trebuie să furnizeze un mecanism prin care să garanteze că doar utilizatorii autorizaţi pot accesa datele. fiind responsabil de proiectarea conceptuală şi logică a bazei de date. software. refacerea bazei de date în caz de incident. În structura unui astfel de sistem în se pot delimita cinci componente principale: hardware. tratarea defecţiunilor hardware. Componenta software include programele ce formează SGBD. SGBD trebuie să furnizeze un mecanism propriu de reconstituire a bazei de date în cazul deteriorării datorită unei cauze interne sau externe. Pentru realizarea acestui obiectiv se utilizează mecanisme de vizualizare. 5. respectiv software. proiectanţii. realocarea spaţiului. Suport pentru comunicarea datelor. a politicilor şi a procedurilor bazei de date. Elementele specifice de hardware depind de cerinţele organizaţiei şi de SGBD utilizat. Servicii de reconstituire. Software. arhivarea datelor.4. Servicii de integritate. Activitatea utilizatorilor sistemului şi a personalul care administrează baza de date se desfăşoară conform unor proceduri documentate privind modul de folosire şi funcţionare a sistemului. utilizarea unor facilităţi SGBD şi a programelor de aplicaţie. cât şi modificării acestora respectă anumite reguli. 9. reorganizarea datelor. sau chiar o reţea de calculatoare. Reprezintă suportul fizic pentru SGBD şi poate fi format de un singur calculator personal. facilităţi de monitorizare. SGBD trebuie sa furnizeze mijloace care să asigure că atât datele din baza de date.Baza de date reprezintă o resursă în cadrul organizaţiei care este gestionată de doi administratori: administratorul de date şi de administratorul bazei de date. . Servicii utilitare. Serviciile utilitare asigură suport pentru administrare efectivă a bazei de date. Proceduri. Fiecare utilizator trebuie sa acceseze doar datele care îi sunt necesare şi pentru care are definit accesul autorizat. 10. Interogarea concurentă trebuie sa fie capabilă să asigure simultan tuturor utilizatorilor aceeaşi informaţie. Prin acestea se asigură suport pentru importul şi exportul de date. Componentele unui mediu SGBD Un mediu SGBD este un sistem informatic care foloseşte baze de date. Integritatea bazei de date se referă la corectitudinea şi coerenţa datelor stocate şi se exprimă în termeni de constrângeri. Servicii de autorizare. Este persoana sau grupul de persoane responsabil de dezvoltarea bazei de date în direcţia susţinerii obiectivelor generale ale organizaţiei. 6. de planificarea bazei de date. programatorii de aplicaţie şi utilizatorii finali. SGBD trebuie să permită ca programele de aplicaţie să fie independente de structura reală a bazei de date. fiind un foarte bun 10 . Hardware. un calculator mainframe. programele de aplicaţie. utilizarea copiilor de siguranţă. Date. sau sub-scheme externe. dar accesează baza de date prin intermediul SGBD. Programele de aplicaţie se realizează folosind limbaje de programare de generaţia treia sau chiar a patra. Programele de aplicaţie nu au rolul de a gestiona datele ci doar de a prezenta informaţia în termeni specifici aplicaţiei prin intermediul unei interfeţe. SGBD trebuie să furnizeze un mecanism care să garanteze că baza de date este corect reactualizată atunci când mai mulţi utilizatori efectuează simultan tranzacţii asupra bazei de date. 1. 3. activarea şi dezactivarea SGBD. 2. chiar şi în cazul reactualizării datelor şi să garanteze că nu vor avea loc interferenţe atunci când mai mulţi utilizator accesează baza de date. de realizarea şi întreţinerea standardelor. Aceste instrucţiuni se referă la deschiderea şi închiderea unei sesiuni de lucru. sistemul de operare local şi atunci când este cazul software de reţea. 5.

procedurile. stabileşte necesităţile şi protecţia privind accesul la date. precum şi a regulilor interne şi externe conform cărora funcţionează organizaţia. El determină cerinţele organizaţiei privind datele. Generaţia a patra de limbaje de programare (4GL) reprezintă limbaje de programare ne-procedurale şi au fost create pentru a mării productivitatea în programarea calculatoarelor folosind instrumente de tip generator (de formulare. standardele. creează standarde de colectarea datelor. de aplicaţii) care permit ca în mod interactiv fără a scrie cod program să fie generate în mod automat programe complexe. Ei sunt capabil să efectueze instantaneu interogări ale bazei de date. strategiile de acces la date. fie unul intern al SGBD pentru a efectua anumite operaţii asupra bazei de date. utilizarea dicţionarului de date şi controlul asupra utilizatorilor finali. operând asupra unor mulţimi de înregistrări. respectiv utilizatorului final sa descrie şi să definească entităţile din baza de date precum şi relaţiile existente între entităţi. conceptuală şi externă. criteriile de confidenţialitate şi de validare a datelor. SGBD asigură suport pentru utilizarea în mod interactiv a acestor limbaje proprii. Este un limbaj descriptiv care permite administratorului bazei de date. de structuri de interogare. Limbajele de programare sunt grupate în generaţii de limbaje. Utilizatorii simpli nu percep baza de date şi nici SGBD ci doar accesează baza de date prin intermediul programelor de aplicaţie. iar proiectarea logică este presupune utilizarea unui model de date. 11 . Administratorul bazei de date (Database Administrator) este persoana sau grupul de persoane responsabil de proiectarea. pentru aceasta folosind fie un limbaj extern. de securitatea şi controlul integrităţii. Limbajul pentru definirea datelor (LDD – Data Description Language) este un limbaj specific pentru fiecare SGBD fiind utilizat pentru a specifica schema bazei de date. dezvoltă modelul general de date conform cu progresul din domeniul tehnologiei informaţiei şi al afacerilor. Limbaje pentru baze de date În limbajele de programare clasice declaraţiile de date şi instrucţiunile executabile aparţin limbajului respectiv. de rapoarte. . gestionează dicţionarul de date şi răspunde de asigurarea unei documentaţii complete care va include modelul de date. fiind capabili să realizeze chiar propriile programe de aplicaţie. de întreţinerea întregului sistem. răspunde de selectarea SGBD şi de implementarea proiectului de bază de date. a constrângerilor asupra datelor ce vor fi stocate în baza de date.cunoscător al organizaţiei. Aceste reguli descriu principalele caracteristici ale datelor aşa cum sunt ele în cadrul organizaţiei respective. sau director de date) şi care descriu datele. Proiectantul de bază de date conceptuale şi logice trebuie sa cunoască amănunţit şi complet toate datele din cadrul organizaţiei. de manipulare şi de control al datelor sunt realizate cu ajutorul unor limbaje diferite. El monitorizează performanţele sistemului şi reorganizarea baze de date. În sistemele de gestiune a bazelor de date funcţiile de declarare. . Teoretic pot fi identificate limbaje de definire a datelor aferente fiecărei scheme din arhitectura bazei de date: internă. de instruirea utilizatorilor şi de realizarea copiilor de siguranţă. Utilizatorii specialişti cunosc structura bazei de date şi facilităţile oferite de SGBD. Proiectarea conceptuală este independentă de detaliile privind implementarea. defineşte constrângerile de securitate şi integritate. Proiectarea conceptuală şi logică presupune identificarea entităţilor. În etapa de proiectare a bazei de date proiectantul va implica toţi presupuşii utilizatori. Acestea sunt numite sub-limbaje de date deoarece includ doar facilităţii specifice funcţiei pe care o au. implementarea şi realizarea fizică a bazei de date. relaţiile. Limbajele procedurale precizează ce date sunt necesare şi cum trebuie să fie obţinut rezultatul unei acţiuni tratând înregistrările în mod individual. inserare. el alege strategia de stocare adecvată ţinând cont de modul de utilizare. Ele pot fi încorporate într-un limbaj gazdă de nivel înalt. care vor fi incluse în catalogul sistem (dicţionar de date. Prin compilarea instrucţiunilor limbajului de definirea datelor se obţin tabele. Proiectantul de bază de date fizice preia modelul logic de date şi îl implementează folosind un anumit SGBD. Fiecare program de aplicaţie este realizat fie cu ajutorul unu limbaj extern sau cu unul propriu SGBD şi efectuează o anumită operaţie asupra bazei de date: extragere. Nu include facilităţi pentru manipularea datelor. răspunde de proiectarea conceptuală şi logică a bazei de date.Programatorii de aplicaţie realizează şi implementează programele de aplicaţie care conferă funcţionalitatea cerută de utilizatorii finali. Programele de aplicaţie se realizează în conformitate cu documentaţia elaborată în etapa de proiectare. politicile. reactualizare şi ştergere de date. iar cele neprocedurale precizează doar ce trebuie obţinut. Este persoana care trebuie sa cunoască foarte bine SGBD folosit precum şi mediul sistemelor de operare. atunci când este cazul. de grafice. Limbajele de programare clasice sunt incluse în generaţia a treia de limbaje (3GL – 3 Generation Language) fiind limbaje de programare procedurale.Utilizatorii finali reprezintă clienţii bazei de date şi pot fi grupaţi în două categorii: utilizatori simpli şi utilizatori specialişti.Proiectanţii bazei de date sunt persoanele implicate în proiectarea logică şi cea fizică a bazei de date. . a relaţiilor dintre entităţi. adică să definească o schemă sau să o modifice.

căutare. parcurge anumite etape. 2. examinarea documentelor din cadrul organizaţiei. 1. infrastructura tehnică în cadrul căreia se va implementa. Pot exista întrepătrunderi importante şi proiectul poate repeta unele etape înainte de a trece la altele. Informaţiile necesare proiectării bazei de date vor fi colectate folosind metoda interviului individual. poate fi foarte costisitoare sau poate conduce chiar la încetarea proiectului. Utilizarea standardelor asigură suport pentru controlul calităţii. Fără o analiză adecvată nu se va putea determina ceea ce utilizatorul doreşte de la noul sistem. vor fi colectate şi analizate cerinţele informaţionale ale organizaţiei cu privire baza data. detaliile privind tranzacţiile. Planificarea bazei de date trebuie să fie integrată în strategia generală a organizaţiei stabilind prin aceasta care sunt cerinţele informaţionale viitoare ale organizaţiei pentru a susţine planurile de afaceri şi scopul organizaţiei. În fiecărei etapă a ciclului de viaţă sunt desfăşurate anumite activităţi. Informaţiile colectare pentru fiecare domeniu de aplicaţie şi grup de utilizatori se vor concretiza sun forma unui set de documente care descriu activităţile şi sub-activităţile din diferite puncte de vedere şi va include documentaţia folosită şi elaborată. Cele mai importante comenzi sunt cele de regăsire. Colectarea şi analiza cerinţelor reprezintă etapa preliminară a proiectării conceptuale a bazei de date. însă. 3. Setul de instrucţiuni din cadrul limbajului de manipulare a datelor responsabil de regăsirea datelor de numeşte limbaj de interogare. observarea organizaţiei în funcţiune. Aceste etape sunt parcurse şi în cazul sistemelor ce folosesc baze de date. pentru salvarea informaţiei cu scopul menţinerii integrităţii bazei de date şi chiar pentru rezolvarea problemelor de acces concurenţial la date. proiectarea. Limbajul pentru controlul datelor (LCD – Data Control Language) este un limbaj specific care include comenzi pentru asigurarea confidenţialităţii şi integrităţii datelor. la un moment ulterior. inclusiv domeniile de aplicaţie şi grupurile de utilizatori. Cantitate de date colectată depinde de politica organizaţiei şi de aria de cuprindere a noului sistem. relaţiile dintre acestea. Planificarea bazei de date. care va include datele importante. Sistemul informaţional evoluează în timp. extensibil. metoda chestionarelor. O comandă va preciza operaţia. aceste etape nu sunt rigide. modul de acces şi forma de editare. În această etapă vor fi dezvoltate de standarde pentru modul de colectare a datelor şi de specificare a formatelor. Sistemul informatic poate fi realizat cu ajutorul unei baze de date şi reprezintă cea mai importantă componentă a sistemului informaţional din cadrul organizaţiei. Pentru a susţine planificarea bazei de date se va realiza un model general de date. Definirea sistemului este a etapa în care se identifică scopul şi limitele noului sistem. precum şi legătura cu componentele funcţionale ale organizaţiei. criteriul de selecţie. 4. baza de date fiind o componentă fundamentală a sistemului informaţional. realizarea prototipului. este prima etapă a ciclului de viaţă şi include activităţile care permit realizarea eficientă a etapelor din ciclul de viaţă. Pentru structurarea cerinţelor se folosesc tehnici speciale de specificare a cerinţelor cum sunt analiza şi proiectarea structurată. este etapa în care se va realiza proiectare conceptuală. Limbajele de manipulare a datelor sunt de două tipuri: procedurale şi neprocedurale (declarative). adăugare. Modelul de date este optim atunci când este simplu. 12 . precum ordinea de prioritate a cerinţelor. folosind diferite metode şi tehnici adecvate. La definirea noului sistem va fi precizat în mod necesar şi modul în care se va realiza interfaţa cu celelalte componente ale sistemului informaţional din cadrul organizaţiei. conceptual şi intern. Etapele din ciclul de viaţă al unui sistem informaţional sunt: planificarea. În practică. colectarea şi analiza cerinţelor. metoda interviului de grup. Operaţiile executate în cadrul bazei de date presupun existenţa unui limbaj specializat în care comenzile se exprimă prin fraze ce descriu acţiuni asupra bazei de date. respectiv care sunt constrângerile impuse datele. Cerinţele organizaţiei cu privire la date fi documentate corespunzător. fiind stabilite modalităţile de realizare a proiectării şi implementării. Proiectarea bazei de date Sistemul informaţional cuprinde totalitatea resurselor care permit colectarea. extragere. O analiză inadecvată. Datele reprezintă o resursă importantă din cadrul organizaţiei şi trebuie gestionată similar celorlalte resurse. testarea şi întreţinerea operaţională. ştergere. toate asociate cu experienţa anterioară a echipei de analiză. diagramele de flux de date. Proiectarea bazei de date (Design-ul) este procesul de realizare a proiectului de bază de date care va trata toate operaţiile şi obiectivele organizaţiei. Manipulările de date se efectuează la cele trei niveluri extern. reactualizare şi chiar de editare. va fi elaborat un model de date care va fi capabil să accepte efectuarea tuturor tipurilor de tranzacţii necesare asupra datelor.Limbajul pentru manipularea datelor (LMD – Data Manipulation Language) este un limbaj care asigură un set de procedee ce permit operaţiile de bază pentru manipularea datelor din baza de date. implementarea. Se va realiza reprezentarea datelor şi a relaţiilor dintre ele conform specificaţiilor stabilite în etapa de analiză. Colectarea şi analiza cerinţelor (Analiza) este etapa de cea mai mare importanţă în care. administrarea. are un ciclu de viaţă. pentru documentaţia necesară. O cerinţă reprezintă o caracteristică care trebuie inclusă în noul sistem. controlul şi propagarea informaţiilor în cadrul unei organizaţii. se va realiza o structurare adecvată pentru realizarea cerinţelor inclusiv cele privind performanţele noului sistem şi a sistemului informaţional în ansamblu. deschidere-închidere. expresiv. proiectarea asistată de calculator. logică şi fizică a bazei de date. Operaţia poate fi de calcul aritmetic sau logic.

Testarea este etapa în care vor fi detectate eventualele erori ale nolui sistem. nu au obligatoriu o reprezentare sub formă de tabele. Practic. Sub-etapa de proiectare fizică a bazei de date presupune cunoaşterea SGBD care va fi utilizat. permite partajarea datelor. Tratarea de tip din interior spre exterior este foloseşte proiectarea de jos în sus pentru entităţile principale. Baza acestui plan trebuie să fie documentarea obţinută în timpul etapei de analizare a cerinţelor. iar echipa de implementare poate reduce semnificativ efortul utilizatorilor prin preluarea datelor pentru noul sistem din vechil sistem cu ajutorul unor proceduri automate. Este etapa care se întinde pe întreaga durată de viaţă a sistemului. În această etapa se vor elabora în mod obligatoriu şi toate documentaţiile aferente. „din interior spre exterior”. care apoi se extinde pentru a cuprinde toate entităţile şi relaţiile. 5. Transferarea datelor din vechiul sistem are o foarte mare importanţă pentru reducerea timpului necesar pentru implementare. asigură integritatea datelor şi oferă posibilitatea unei reprezentări schematice. Sunt monitorizate performanţele sistemului şi se încorporează noi cerinţe atunci când este cazul.nonredundant.F. Realizarea prototipului este etapa în care se construieşte un model de lucru. Tranzacţiile din baza de date vor fi efectuate cu ajutorul limbajului de manipularea datelor. Întreţinerea operaţională reprezintă procesul de monitorizare şi întreţinere a noului sistem. lista este reformulată şi cuprinde 100 de regulii. 8. Alegerea SGBD poate fi considerată o etapă din ciclul de viaţă a sistemului informatic. Regulile lui E. Referirea la nivelul logic precizează că elemente de construcţii logice. 7.F. nu poate fi considerat relaţional. permite validarea structurală. majoritatea implementările existente de SGBD nu respectă această regulă. Codd a publicat un set de 13 reguli de fidelitate pe baza cărora se apreciază dacă un sistem de gestiune de baze de date poate fi considerat relaţional. mai mult. Regula 1 – regula reprezentării datelor: Într-o bază de date relaţională. Testarea „pe fir” este folosită pentru testarea sistemelor care funcţionează în timp real. 6. Testarea poate fi făcută „de sus în jos”. dar cea mai bună este testarea. Majoritatea sistemelor de gestiune de baze de date considerate ca fiind de tip relaţional nu respectă absolut toate regulile definite de Codd. de a le verifica cu scopul de a clarifica cerinţele utilizatorilor. pe care le putem aplica proiectului. E. F. Testele la „suprasolicitare” au menirea de a testa componentele sistemului în toate situaţiile posibile. Strategia de proiectare de tip de sus în jos se foloseşte pentru baze de date complexe şi începe cu realizarea unor modele de date care conţin entităţi şi relaţii relevante. Există un număr de practici pentru asigurarea calităţii. informaţia este reprezentată explicit la nivel logic sub forma unor tabele ce poartă numele de relaţii. care nu are toate caracteristicile cerute şi nu acoperă întreaga funcţionalitate. respectiv „strategia compusă” care combină primele două metode. „de jos în sus”. Implementarea este etapa care include realizarea fizică a bazei de date prin utilizarea limbajului de definire a datelor al SGBD şi implementarea programelor de aplicaţie realizate în limbajul ales de echipa de proiectare. sau la „suprasolicitare”. cum sunt indecşi. Acest plan de testare trebuie să definească nu doar exact ceea ce trebuie verificat ci şi ce rezultate trebuie generate de noul sistem inclusiv de programele de aplicaţie. Unul din scopurile principale a procesului de design este stabilirea de scheme pe baza căreia se poate construi baza de date. motiv pentru pe baza cerinţelor curente şi viitoare ale organizaţiei va fi alea cel mai potrivit SGBD. În etapa de implementare vechiul sistem şi noul sistem funcţionează în paralel. dar înainte de proiectarea fizică. Codd şi în cazul în care un SGBD care nu respectă această regulă. testându-se răspunsul sistemului la fiecare eveniment. care este esenţial atât pentru sistem cât şi pentru verificarea reacţiei utilizatorului. în prezent. Scopul creării prototipului este de a oferi utilizatorilor posibilitatea de a utiliza un sistem apropiat de cel real pentru identifica caracteristicile incluse deja. În această etapă pot fi folosite instrumentele de tip interactiv ale SGBD pentru definirea şi accesarea datelor. după care prin rafinări succesive de sus în jos se identifică toate entităţile şi relaţiile existente între acestea. Regula 2 – regula accesului garantat la date: Fiecare valoare de dată (valoare atomică) dintr-o bază de date trebuie să poată fi adresată în mod logic printr-o combinaţie formată din numele relaţiei. Aceasta înseamnă că SGBD nu va folosi pentru definirea şi manipularea datelor operaţii care nu sunt de tip relaţional. Codd În anul 1985. „de sus în jos”. Testarea de „de sus în jos” permite testare la nivel de subsistem şi permite detectarea erorilor în fazele iniţiale ele proiectului. după care prin procesul numit normalizare se identifică atributele necesare şi dependenţa funcţională a acestora. Regula 0 – regula gestionării datelor: Un SGBD considerat ca fiind relaţional trebuie să fie capabil să gestioneze o bază de date prin posibilităţile sale relaţionale. Metoda de proiectare de jos în sus se foloseşte în cazul bazelor de date simple şi începe de la nivelul fundamental al atributelor ce definesc entităţile car sunt grupate în relaţii care reprezintă tipuri de entităţi şi asociaţii ale acestora. Monitorizarea presupune urmărireqa sistematică a performanţelor şi înregistrarea eventualelor anomali de funcţionare. Testarea „de jos în sus” pleacă de la fiecare modul individual. Acest transfer face ca datele preluate să fie corecte chiar dacă este necesară conversia datelor în formatul cerul de noul sistem. „pe fir”. care se poate parcurge în orice fază. Proiectarea se poate realiza folosind o metodă de tip „de jos în sus”. valoarea cheii primare şi 13 . Este regula cea mai importantă şi conform lui E. Testarea trebuie făcută conform unui plan de testare bine pus la punct.

Descrierea bazei de date este reprezentată la nivel logic sub forma unor tabele care pot fi accesate în acelaşi mod ca şi datele efective. Regula 11 – regula independenţei datelor din punct de vedere al distribuirii: Sub-limbajul de manipulare a datelor trebuie să permită utilizarea aceloraşi programe de aplicaţie şi interogări (să fie invariante din punct de vedere logic)pentru a accesa date centralizate sau distribuite (Distribuirea datelor pe mai multe calculatoare dintr-o reţea de comunicaţii de date. pentru a regăsi informaţia dorită. toate implementările SQL respectă această regulă. Operaţiile de manipulare a datelor pot fi aplicate atât în mod interactiv cât şi prin program. să verifice şi să corecteze datele de intrare etc. Într-un SGBD relaţional trebuie să se separe aspectul fizic al datelor (stocare sau acces la date) de aspectul logic al datelor. Se poate regăsi orice valoare aparţinând oricărui atribut al unei relaţii. actualizare şi ştergere a datelor. Regula 4 – regula dicţionarelor de date (catalog dinamic on-line. Independenţa de distribuţie presupune ca un program de aplicaţie care accesează sistemul SGBD pe un singur calculator trebuie să funcţioneze fără modificări şi într-o reţea chiar dacă datele sunt mutate de pe un calculator pe altul. bazat pe modelul relaţional): Asupra descrierii bazelor de date (informaţii relative la relaţii. Un SGBD trebuie să poată determina dacă o vizualizare poate fi actualizată şi să stocheze rezultatul interogării într-un dicţionar de tipul unui catalog de sistem. programele de aplicaţie şi mecanismele de interogare directă nu sunt afectate de modificările făcute asupra datelor.reguli de integritate (regula 3 şi regula 10). nu trebuie să afecteze programele de aplicaţie şi interogările. reactualizare şi ştergere de nivel înalt): Regulile de manipulare asupra unei relaţii luată ca întreg sunt valabile atât pentru operaţiile de regăsire a datelor. în funcţie de variantele instrucţiunii de selecţie utilizate. Regula 9 – regula independenţei logice a datelor: Programele de aplicaţie şi activităţile utilizatorilor trebuie să fie transparente la modificările de orice tip efectuate asupra datelor. nu în programul de aplicaţie). Regula 5 – regula limbajului de interogare (sub-limbaje de date cuprinzătoare): Trebuie să existe cel puţin un limbaj care să permită: (1) definirea datelor. (2) definirea vizualizărilor.reguli structurale (regula 1 şi regula 6). regula 9 şi regula 11). indecşi. . (5) autorizarea. regula 4. să regăsească informaţia şi să o poată actualiza. (4) constrângerile de integritate.numele atributului. Trebuie să existe un mecanism prin care să se poată determina dacă anumite vizualizări pot fi actualizate sau nu. Un SGBD relaţional nu trebuie să oblige utilizatorul să caute într-o relaţie. chiar dacă datele sunt transferate de pe un calculator pe altul. Limbajul SQL permite definirea de restricţii privind integritatea datelor şi stocarea lor în catalogul de sistem prin aceasta asigurându-se controlul centralizat asupra constrângerilor. cât şi asupra operaţiilor de inserare. Regula 10 – regula independenţei datelor din punct de vedere al integrităţii: Constrângerile de integritate specifice unei baze de date relaţionale nu vor fi definite programele de aplicaţie ci de sub-limbajul relaţional de date. . . dacă şi ori de câte ori datele sunt centralizate sau distribuite fizic). Majoritatea implementărilor SQL stabilesc aceasta. Într-un SGBD relaţional trebuie să putem face diferenţa între valoarea zero. Un SGBD este minimal relaţional dacă datele din cadrul bazei de date sunt reprezentate prin valori în tabele. execuţie. nu există pointeri observabili de către utilizatori. etc) trebuie să se poată aplica aceleaşi operaţii ca şi asupra datelor din baza de date. Orice modificare efectuată asupra unei relaţii.reguli de manipulare a datelor (regula 2. tuplu cu tuplu. un şir vid de caractere şi o valoare necunoscută. fără limitări impuse din considerente interne. vizualizări.reguli privind independenţa de date (regula 8. Cele 13 reguli pot fi grupate în cinci domenii de funcţionalitate: . utilizatorul percepând datele fără a cunoaşte locul în care sunt stocate. În general. iar sistemul suportă operatorii relaţionali de proiecţie. regula 5. (6) limitele tranzacţiilor (început. urmând a fi memorate în catalogul sistem. Regula 3 – regula reprezentării informaţiei necunoscute (tratarea sistematică a valorilor null): Un sistem relaţional trebuie să permită utilizatorului definirea unui tip de date numit null pentru reprezentarea unei informaţii necunoscute la momentul respectiv indiferent de tipul de dată. (3) manipularea datelor (interactiv sau prin intermediul programului). reluare). selecţie şi compunere naturală. (Regulile de integritate trebuie să fie definite într-un sub-limbaj relaţional. Limbajul permite utilizatorilor să definească relaţii şi vizualizări.reguli fundamentale (regula 0 şi regula 12). 14 . regula 7). Regula 6 – regula de reactualizare a vizualizării: Toate vizualizările care sunt teoretic reactualizabile pot fi reactualizate de sistem. . într-un limbaj gazdă. Programele de aplicaţie trebuie să funcţioneze fără modifică şi într-o reţea. dacă sunt specificate numele relaţiei. Regula 12 – regula versiunii procedurale a SGBD (nonsubversiune): Orice componentă procedurală a unui SGBD trebuie să respecte aceleaşi reguli de integritate ca şi componenta relaţională (orice limbaj de nivel inferior trebuie să respecte aceleaşi reguli de integritate exprimate în limbajul relaţional de nivel înalt). numele atributului şi valoarea cheii primare. nu trebuie să afecteze operaţiile de manipulare a datelor. Regula 8 – regula independenţei fizice a datelor: Programele de aplicaţie şi activităţile utilizatorilor nu depind de modul de stocare a datelor sau de modul de acces la date. Regula 7 – regula limbajului de nivel înalt (operaţiile de inserare.

Un SGBD este complet relaţional dacă este minimal relaţional şi. Eliminarea acestor anomalii se realizează cu ajutorul operaţiei numite normalizare. sistemul suportă restricţiile de integritate de bază (unicitatea cheii primare. dacă avem şi A→C. începând cu forma normală unu (1NF) şi ajungând la forma normală cinci (5NF).utilitare pentru generarea de formulare şi rapoarte. în acelaşi timp. Pentru modelul relaţional doar prima formă normală (1NF) este de importanţă critică. unitare în raport cu celelalte tipuri de SGBD. . respectiv cheile candidat ale relaţiilor şi pe dependenţele funcţionale. Forme normale Un obiectiv important a proiectării unei baze de date de tip relaţional îl reprezintă gruparea atributelor în relaţii astfel încât redundanţa datelor să fie minimă. Procesul de normalizare a relaţiilor se realizează în mai mulţi paşi. cu anumite particularităţi care decurg din concepţia de organizare a datelor. care figurează ca cerinţă minimală la majoritatea sistemelor de gestiune a bazelor de date de tip relaţional. etc. denumite anomalii de reactualizare.anomalii de modificare rezultă din faptul că este dificil de modificat o valoare a unui atribut atunci când ea apare în mai multe tupluri ale relaţiei. în plus. ceea ce face ca acestea să nu poată fi adăugate. adică o sigură valoare şi numai una. . Spunem că un atribut B al unei relaţii R depinde funcţional de un alt atribut A. . în sensul caracterizării globale. atunci când fiecărei valori a atributului A îi corespunde exact o anumită valoare atributului B (A→B).anomalii de ştergere constau în faptul că anumite date care urmează să fie şterse. care clasificate în: . spunem că atributul A este determinatul atributului B.F. Dacă o anumită cerinţă nu este îndeplinită pentru o anumită relaţie. logic şi conceptual. Codd a stabilit iniţial trei forme normale pentru relaţii şi a introdus procesul de normalizare care se bazează pe noţiunea de dependenţă funcţională ca relaţie între atributele unei entităţi care are un caracter invariant. Spunem că o dependenţă funcţională este totală sau completă dacă cele două atribute au o dependenţă funcţională în ambele sensuri (A→B şi B→A). fiind satisfăcute. constrângerile de referinţă. . E. în raport cu alte SGBD de tip relaţional. Normalizarea presupune parcurgerea unei succesiuni de paşi. care le separă de sistemele considerate ca fiind nerelaţionale: . Un SGBD relaţional îndeplineşte funcţiile unui SGBD. Este forma de bază a relaţiilor. Caracterizarea unui SGBD relaţional se poate realiza la nivelul clasei de SGBD relaţionale. Dacă atributul B depinde funcţional de atributul A.mecanisme pentru controlul integrităţii semantice a datelor.conservarea datelor. adică în schema conceptuală finală nici o relaţie nu trebuie să fie conţinută într-alta. Fiecare SGBD relaţional implementează modelul relaţional într-o manieră proprie care îl diferenţiază de restul sistemelor relaţionale. . sau la nivelul unui SGBD relaţional individual în sensul caracterizării particularităţilor sale. celelalte forme normale fiind opţionale. . În acest caz spunem că există o dependenţă tranzitivă. Pentru a înlătura aceste anomalii.anomalii de inserare (adăugare) constau în faptul că anumite date care urmează să fie adăugate fac parte din tupluri incomplete (pentru care nu se cunosc toate datele). Dependenţa funcţională este specificată ca o constrângere între atribute. fac parte din tupluri în care se găsesc şi alte date care mai sunt necesare în continuare.un limbaj relaţional pentru descrierea datelor la nivel fizic.conservarea dependenţelor dintre date. adică în schema conceptuală finală să existe toate datele din cadrul schemei iniţiale.mecanisme pentru optimizarea cererilor de date. următoarele condiţii: . Relaţiile care conţin date redundante pot crea probleme. un tuplu nu trebuie să conţină atribute sau grupuri de atribute repetitive. Dependenţa funcţională este o proprietate a semnificaţiei sau a semanticii atributelor. acestea se pierd.un limbaj relaţional pentru manipularea datelor. Realizarea funcţiilor unui SGBD relaţional se face cu ajutorul unor instrumentele şi mecanisme de lucru specifice de tip relaţional. utilitare pentru generarea unor statistici referitoare la starea şi activitatea bazei de date.descompunerea minimală a relaţiilor iniţiale. . dacă şi numai dacă toate atributele ei conţin numai valori atomice. Teoria normalizării se ocupă cu îmbunătăţirea succesivă a schemei conceptuale.mecanisme pentru asigurarea coerenţei datelor în condiţiile accesului la date. integritatea entităţii) şi precum şi toate operaţiile de bază ale algebrei relaţionale. ori ştergerea făcându-se la nivelul tuplului. . Prin parcurgerea etapelor de normalizare relaţiile devin progresiv mai restrictive ca format şi mai puţin vulnerabile la anomaliile de actualizare. Pentru trei atribute A. În plus. atunci relaţia în cauză va fi descompusă în relaţii care satisfac în mod individual cerinţele normalizării. respectiv din modelul relaţional. 15 . B şi C. adică să se păstreze tipurile de relaţii dintre entităţi. fiecare pas corespunzând unei forme normale. Tehnica include o mulţime de reguli care pot fi utilizate pentru testarea relaţiilor individuale. utilitare pentru generarea de aplicaţii. care este o tehnică formală care se bazează pe cheile primare. în care A→B şi B→C spunem că C este dependent tranzitiv de A prin intermediul atributului B. O relaţie este în forma normală unu (1NF). . Semantica indică modul în care atributele sunt legate unele de altele şi specifică dependenţele funcţionale ale acestora.

Calculul relaţional se prezintă sub două forme: orientat spre tupluri şi orientat spre domenii. SELECT. şi reciproc. un predicat este o funcţie de mai multe variabile. J. ori să corespundă la o valoare a cheii primare asociate. produsul cartezian. Operatorii modelului relaţional Operatorii modelului relaţional definesc operaţiile care pot fi efectuate asupra relaţiilor. Variabilele iau valori dintr-un domeniu dat. dacă se găseşte în forma normală doi şi toate atributele non-cheie sunt dependente tranzitiv de cheia primară. Motiv pentru care orice relaţie posibil de definit în algebra relaţională poate fi definită şi în cadrul calculului relaţional. A patra formă normală (4NF) elimină redundanţele datorate relaţiilor de tip n:m. intersecţie şi împărţire. Algebra relaţională a fost introdusă de E. adică aserţiuni pe care datele conţinute în baza trebuie să le satisfacă şi prin care se asigură corectitudinea datelor. care poate fi adevărată sau falsă. A cincia formă normală (5NF) elimină dependenţele multiple de tip ciclic. negaţia. DIVISION). dacă fiecare determinant este o cheie candidat. JOIN. Pe baza unor predicate iniţiale. şi alţi trei operatori pentru operaţiile de uniune. Există trei tipuri de constrângeri structurale (de cheie.O relaţie este în a doua formă normală (2NF). În algebra relaţională se specifică în mod explicit o anumită ordine pentru evaluarea oricărei expresii. proiecţia. reuniunea şi diferenţa. DIFFERENCE) şi operatori relaţionali speciali (PROJECT.unicitatea cheii: cheia primară trebuie să fie unică şi minimală. a patra formă normală (4NF) şi a cincia formă normală (5NF) care conduc la diminuarea redundanţei în baza de date. În logica simbolică. de entitate) ce constituie mulţimea minimală de reguli de integritate pe care trebuie să le respecte un SGBD relaţional şi care sunt definite în raport cu noţiunea de cheie a unei relaţii. Integritatea entităţilor impune ca într-o relaţie de bază (care corespunde unei entităţi în schema conceptuală) nici un atribut al unei chei primare nu poate fi null. pentru realizarea funcţiilor de prelucrare asupra datelor din baza de date. având ca rezultat o descompunerea a relaţiilor de tip uniune fără pierderi. O relaţie este în a treia formă normală (3NF). noi relaţii. care are o valoare de adevăr. disfuncţia. dacă este în forma normală unu şi oricare dintre atributele noncheie este dependent funcţional complet de cheia primară a relaţiei. acţionând asupra unei perechi de relaţii. prin aplicarea unor operatori ai calculului cu predicate (conjuncţia. adică a dependenţelor multiple. Regulile de integritate sunt constrângeri sau restricţii ce se aplică tuturor instanţelor din baza de date. În calculul relaţional o interogare precizează ce va fi extras din baza de date fără a se preciza modul de evaluare a unei interogări.F. INTERSECT. Se face distincţie între regulile structurale.D. numite dependenţe multi-valoare. Operatorii de selecţie şi proiecţie sunt unari.integritatea entităţii: atributele cheii primare trebuie să fie diferite de valoarea null. Algebra relaţională şi calculul relaţional sunt limbaje formale utilizate pentru bazele de date relaţionale ca suport pentru limbajul de manipulare a datelor. cuantificatorul existenţial şi cuantificatorul universal) se pot defini noi predicate. PRODUCT. care garantează că nu sunt introduse linii false atunci când relaţiile rezultare în urma descompunerii sunt reunite printr-o operaţie de uniune naturală. Ullmann a demonstrat echivalenţa dintre algebra relaţională şi calculul relaţional. din relaţiile rezultate în urma descompunerii putând fi reconstituită relaţia iniţială. de nivel înalt. Conform reguli de integritate referenţiale dacă o relaţie are o cheie externă atunci orice valoare a cheii externe va coincide cu valoarea unei chei candidat a unui tuplu în relaţia de bază a acesteia sau este o valoare null. fără a modifica relaţiile iniţiale. de referinţă. care sunt specifice unei aplicaţii particulare. Integritatea relaţională Constrângerile de domeniu sunt restricţii care se aplică asupra mulţimi de valori permise pentru atributele relaţiilor. Codd în 1971 ca o mulţime de operaţii formale în care operanţii şi rezultatul sunt relaţii şi care acţionează asupra uneia sau a mai multor relaţii pentru a defini o nouă relaţie. Trecerea de la forma 3FN la 4FN şi 5FN se face operând asupra cheilor compuse între ale căror atribute apar relaţii care generează dependenţe ce nu sunt funcţionale. ceea ce implică o anumită strategie de evaluare a interogării bazei de date. Cei cinci operatorii fundamentali ai algebrei relaţionale sunt fie operatori folosiţi pentru operaţiile de regăsire: selecţia (sau restricţia). Calculul relaţional este o adaptare a calculului predicatelor din logica simbolică aplicat pentru interogarea bazelor de date. Dependenţa de tip uniune fără pierderi este o proprietate a operaţiei de descompunere. În afara primelor trei forme normale au fost introduse şi formele normale: forma normală Boyce – Codd (BCNF). adică operatori tradiţionali pe mulţimi (UNION. .integritatea referirii: o cheie externă trebuie ori să fie null în întregime. O relaţie este în forma normală Boyce – Codd (BCNF). Sunt formulate trei reguli de integritate structurală: . Modelul relaţional foloseşte operatori relaţie din algebra relaţională şi calculul relaţional. 16 . Înlocuind variabile cu valori se obţine o expresie numită propoziţie. . iar ceilalţi sunt operatori binari. operând asupra unei singure relaţii. care sunt inerente modelării datelor şi regulile de funcţionare (comportament).

17 .

8.768 şi 32. on/off. .1.Memo este utilizat pentru text de lungime ce poate depăşi 255 de caractere. . . Deşi este incrementat secvenţial în mod implicit.797*10 şi 1. iar fiecare coloană din tabelul Access reprezintă un câmp diferit. Un câmp este o informaţie individuală din componenţa unei înregistrări. de unde îşi extrage informaţiile pe care le afişează sub forma unui combo box. Posibilitatea creării unei baze de date care poate fi utilizată de către un utilizator sau mai mulţi utilizatori în mod partajat. 5. Noţiuni generale privind bazele de date ACCESS Sistemul de gestiune a bazelor de date (SGBD) Microsoft Access face parte din pachetul de aplicaţii Microsoft Office exploatabil sub sistemele de operare Windows 2000 şi Windows XP. Existenţa componentei Help şi a facilităţilor de ajutor de tip contextual. conţinând diferitele obiecte. .MDE.Byte cu interval valoric între 0 şi 255.Lookup permite stocarea unei valori.Number are mai multe sub-tipuri. Microsoft Access include facilităţile oferite de sistemul de operare Microsoft Windows. . Single cu interval valoric între–3. se poate stabili şi o incrementare aleatoare. 308 18 .768 de tabele. 7. dacă există suficiente resurse disponibile. O bază de date Microsoft Access poate cuprinde cel mult 32.648 şi 2. în plus. O înregistrare este o linie dintr-un tabel. dar afişează textul ce însoţeşte valoarea respectivă. Tabelele unei baze de date au unul sau mai multe câmpuri ce identifică în mod unic fiecare înregistrare din acel tabel şi formează cheia primară pentru tabela respectivă. Obiecte pe care le poate conţine o bază de date ACCESS sunt: Tabelele Tabelele conţin datele propriu-zise corespunzătoare entităţilor din baza de date.4*10 şi 3.3. O bază de date ACCESS este bază de date relaţională orientată spre obiecte. 6.Decimal cu interval valoric între –22337203685477.5808. Instrumente de lucru interactiv pe baze model de tip Wizard pentru a ajuta utilizatorii în dezvoltarea de aplicaţii.MDE pentru baza de date ACCESS devine imposibilă modificarea obiectelor bazei de date şi este ascuns codul program Visual Basic. care reprezintă totodată un instrument complex de dezvoltare a aplicaţiilor de baze de date.Date/Time conţine informaţii de dată calendaristică şi/sau timp. determinate de proprietatea field size: . 2. Prin utilizarea formatului . . MICROSOFT ACCESS 3. Interfaţa utilizator este uşor de folosit şi respectă principiile de utilizare caracteristice tuturor aplicaţiilor pachetului MS Office. Microsoft Access este compatibil cu tehnicile de legare şi încapsulare din tehnologia OLE Microsoft. 4.MDB sau . sau prin limbajul SQL (Standard Query Language). .Double cu interval valoric între–1. Asistenţă în dezvoltarea aplicaţiilor şi utilizarea bazei de date.Text este destinat informaţiei de tip şir de caractere (maxim 255 caractere). o colecţie de informaţii memorate într-un fişier având extensia . realizările entităţii (înregistrări). în care fiecare câmp conţine o valoare concretă dintr-un domeniu de valori şi conţine informaţii care identifică o anumită realizare concretă a entităţii. loc sau obiect.4*10 . Câmpurile din tabele ACCESS sunt definite ca fiind de un anumit tip de dată cu care se va încărca fiecare câmp: .5808 şi 922337203685477. Acest tip de câmp poate fi legat de fapt de un alt tabel sau interogare.AutoNumber nu poate fi modificat manual. Microsoft Access are caracteristicile specifice unui sistem de gestiune a bazelor de date relaţionale.Long Integer cu interval valoric între –2. Caracteristicile definitorii ale SGBD Access sunt următoarele: 1. organizate sub forma unei matrice în care coloane reprezintă atribute (câmpuri).767. . . Interogarea bazei de date se poate realiza în mod grafic prin interfaţa QBE (Query By Example).797*10 .CAP. iar liniile apariţiile.647. .Integer cu interval valoric între–32.483. Realizarea importului/exportului de date către alte aplicaţii ale pachetului Microsoft Office sau alte SGBD de tip relaţional. persoană.483.Yes/No conţine date de tip logic una din cele două stări: yes/no. dintre care 254 pot fi deschise simultan. true/false. Automatizarea unor activităţi/acţiuni prin macro-comenzi sau prin aplicaţi program în limbajul VBA.Obiecte OLE este tot un câmp pentru obiecte predefinite. 308 38 38 .147.147. 3. permite şi facilităţi de tipul drag and drop.

Formularele Formularele interogare. Programarea VBA permite declanşarea evenimentelor. Structura unui obiect: Un obiect este o entitate autonomă ce prezintă caracteristici (proprietăţi: mărime. culoare. Unele obiecte au o reprezentare vizuală (Formular. care permit automatizarea mai multor sarcini folosind un limbaj specific. Modulele Modulele program conţin o parte a codului VBA al aplicaţiei. Container etc. Macro-urile Macro-comenzile ACCESS reprezintă o modalitate optimă de acces la date. • calculelor simple şi analizelor încrucişate. proceduri şi funcţii. şi anume declaraţiile de variabile şi constante. adică vizualizări. actualizarea înregistrărilor). actualizare etc. Paginile de prezentare Paginile de prezentare reprezintă obiecte specifice ACCESS care permit afişarea într-un format accesibil care permite transmiterea rapidă a datelor prin Internet sau Intranet. sunt obiecte folosite pentru a consulta sau actualiza datele dintr-un tabel sau o structură de Rapoartele Rapoartele sunt obiecte folosite pentru a sintetiza datele stocate într-o tabela reală sau virtuală şi a oferi un rezultat tipărit al informaţiilor din baza de date – un raport ACCES. fiind definite cu ajutorul tabelelor definite deja în baza de date. Pentru a rezolva o sarcină mai complexă se poate construi un macro (format dintr-o mulţime de acţiuni) sau o procedură (formată dintr-o succesiune de instrucţiuni în Visual Basic). Raport. comportamentelor specifice asupra obiectelor prin intermediul codului program: metode. VBA reprezintă un mediu de programare orientat obiect. Funcţia constă dintr-un set de instrucţiuni (un modul program) care în urma execuţiei returnează o valoare de un anumit tip. Evenimentul reprezintă acţiunea utilizatorului sau a sistemului asupra unui obiect ceea ce declanşează execuţia codului program corespunzător.). Tabelele virtuale definite cu ajutorul interogărilor permit efectuarea: • selecţiilor şi sortărilor în tabele.) în timp ce altele nu sunt accesibile decât în cod VBA (DBEngine.) Marea majoritate a obiectelor vizuale au posibilitatea de a reacţiona la evenimente (deschidere. de la cea mai simplă listă a unui tabel până la rapoartele cele mai complexe ce conţin regrupări de înregistrări şi calcule. 19 . • acţiunilor (adăugarea. Metoda constă în codul program predefinit ce se raportează la un tip de obiect şi care se execută în momentul apariţiei unui eveniment. ştergerea.Interogările Interogările sunt obiecte virtuale de tip tabelă. Astfel VBA permite o mare flexibilitate de funcţionare şi o întreţinere mai uşoară. Procedura este alcătuită dintr-un set de instrucţiuni (un modul program) ce nu returnează nici o valoare ci execută o anumită acţiune. valoare etc. care nu au corespondent fizic.) şi comportamente (metode) proprii. etc. funcţiile şi procedurile globale ale întregii aplicaţii. • operaţiilor SQL.

legături (Relations/Relaţii).3. datele (Tabele). Tipuri de fişiere în ACCESS Micrsosoft Access foloseşte mai multe tipuri de fişiere: • fişierul . Meniul MS Office este arătat mai jos.MDE este un fişier ce poate fi generat pornind de la un fişier . Lucru cu ACCESS Ca majoritatea programelor Windows. la fel ca şi despre opţiunile Access. Pentru a porni. Access se deschide pe ecran: 20 . 3.MDW (system. click pe butonul Start > meniul All Programs >meniul MS Office > Microsoft Access .MDA este o bază de date Biblioteca/Library şi poate avea un cod ce poate fi pus la dispoziţia altor baze de date.LBD conţine informaţii despre securizarea fişierului şi este administrat automat de Access.MDB şi care nu mai permite utilizatorului nici să modifice formularele şi rapoartele nici să vadă codul. interfaţa vizuală (Formulare şi Rapoarte) şi codul (Interogări. • fişierul . • fişierul .ADP este un proiect Access ce permite crearea unei aplicaţii client-server cu SQL Server 2000.2.OBIECT COMPORTAMENTE COD DATE CARACTERISTICI LISTA DE EVENIMENTE METODE (PREDEFINITE) PROPRIETĂŢI PROCEDURI ŞI FUNCŢII 3. • fişierul .mdw) este o bază de date Work Group ce stochează informaţiile de siguranţă despre utilizatori şi grupe. Aici se regăseşte întreg conţinutul bazei de date. Macro-uri şi Module). la fel ca şi complemente pentru a extinde posibilităţile ACCESS. • fişierul . şi anume.MDB este fişierul Database/Bază de date propriu-zisă. • fişierul . Access poate fi lansat în execuţie prin navigarea meniului butonului Start.

• Edit . forms. Open. pentru a o selecta. Se executa click pe comanda Open. se deschide caseta de dialog Open.Conţine o varietate de instrumente pentru verificare spelling. Este afişat un sub-meniu. Se deschide meniul View. Apăsaţi tasta ESC de pe tastatura sau executaţi click oriunde în afara meniului deschis. • Window . 2. Meniul File.Cut.Vizualizarea diferitelor obiecte datatabase (tables. realizarea de analize şi diferite utilităţi asupra conţinutului unei baze de date. Save şi Print care sunt folosite pentru acţiuni asupra fişierelor baze de date şi asupra conţinutului acestr fişiere. reports) • Insert .Inserarea unui nou tabel.cu opţiunile New.Bara de instrumente Access Panoul cu sarcini Utilizarea barei meniu Bara meniu este similara celorlalte programe Microsoft Office. Ea conţine meniurile: • File . formular. 3. Meniul View 1. Executaţi click pe Cancel (revocare) pentru a închide caseta de dialog fără a deschide un fişier.Switch între bazele de date deschise. Close. închideţi meniul fără a selecta ceva. punctele de suspensie indica faptul ca selectarea comenzii va determina deschiderea unei casete de dialog care va solicita informaţii suplimentare. etc. interogare. 3. executaţi click pe oricare dintre aceste comenzi.Obţinerea care activează un ansamblu de ferestre help în Access. Aici puteţi selecta directorul care conţine fişierul pe care doriţi să-l deschideţi. Acest meniu conţine şi opţiunea Exit pentru încheierea unei sesiuni de lucru Access. 1. Report. Form. Executaţi click pe opţiunea View dine bara de meniuri. Delete • View . Se deschide opţiunea File. Paste. în care sunt enumerate comenzi suplimentare. raport (Insert a new Table. Procedând astfel.) • Tools . după care puteţi selecta fişierul. 21 . • Help . Copy. Executaţi click pe intrarea Database Objects (obiecte de tip baza de date). Query. queries. 2. crearea de relaţii intre tabele.

după care apăsaţi tasta Tab. După ce aţi creat sau deschis baza de date pentru care doriţi să creaţi un table executaţi click pe optiunea Tables de pe bara Objects din fereastra bazei de date 2. executaţi click pe butonul Create. În fereastra design se deschide un tabel gol. La definirea câmpurilor unui tabel. deschideţi meniul File şi selectaţi New. 4. Utilizatorul poate crea o baza de date nouă (fie fără înregistrări . Executaţi dublu-click pe opţiunea Create table in Design view (reprezintă modul cel mai eficient de creare a tabelelor) sau click pe butonul Design situate in bara de instrumente Tables.de tip blank. se deschide caseta de dialog File New Databases. 2. Data Type (Tip de date) şi Description (descriere). Create table by entering data. Ea poate fi aplicata eficient în cadrul realizării unei aplicaţii complexe. 5. 1. Access creează o noua baza de date şi afişează fereastra bazei de date: Bara de instrumente Tables Butonul Tables Bara de instrumente Objects Fereastra bazei de date Crearea tabelelor 1. 22 . Crearea unei tabele utilizând instrumentul wizard permite adăugarea unor câmpuri predefinite ce se afla în cadrul bibliotecilor de tabele standard ACCESS.3. În coloana Field Name se tastează un nume pentru primul câmp. 3. În general. care să ofere un înţeles clar al datelor conţinute. După ce este creată o bază de date. de tip blank. fie cu câteva tabele create interactiv cu database wizard). Observaţie . la începutul unui proiect. în zona New din caseta de dialog New File.Dacă este creată o baza de date şi după aceea creaţi o alta folosind acelaşi nume.3. executaţi click pe legătura Blank database (baza de date vidă). 3. trebuie creată o bază de date nouă. Daca nu este afişat panoul cu sarcini New File. Aplicaţii practice în ACCESS Crearea bazelor de date şi a tabelelor Modul de vizualizare Design View introducerea câmpurilor cu tipul de dată asociat şi descrierea corespunzătoare (modul în care se defineşte structura tabelelor din baza de date). aceasta se deschide utilizând opţiunea Open existing database pentru a redeschide baza de date creată anterior. Parcurgeţi calea de acces până la directorul în care doriţi să salvaţi noua bază de date. Nu se recomandă aceasta modalitate deoarece câmpurile din cadrul tabelelor standard au fost create pentru sistemul de lucru anglo-saxon. permite crearea tabelelor prin introducerea de date şi reprezintă o forma rapida de a introduce datele. în câmpul File name (nume de fişier) tastaţi un nume descriptiv pentru noua bază de date. conţinând coloanele Field Name (Nume câmp). 6. este important să se folosească nume de câmpuri sugestive. sau poate să deschidă o baza de date existentă. noua baza se va suprascrie peste cea veche.

Pe lângă proprietăţile comune. câmpurile au o mulţime de proprietăţi asociate care pot fi afişate şi modificate. 3.Schimbarea unui nume de câmp . executaţi click pe săgeata în jos din câmpul Data Type. La orice modificare executată asupra bazei de 23 . 2. deschideţi meniul File si selectaţi Save. Opţional tastaţi o descriere de câmp în coloana description. Editarea structurii tabelelor din baza de date Fie tabela angajat cu următoarea structură: Afişarea proprietăţilor unui câmp 1. 5.Numele câmpurilor în Access poate avea lungimea de până la 64 caractere. este recomandat să nu fie folosite spaţii. Fereastra de proprietăţi aflată la baza ferestrei afişează diverse proprietăţi pentru câmpul selectat în fereastra de structură. Text. După care apăsaţi tasta Tab.Adăugarea unei descrieri a câmpului . Pentru a închide fereastra tabelului şi a reveni în fereastra bazei de date. Pentru a schimba tipul de date prestabilit. Executaţi click pe un câmp pentru a-i vizualiza proprietăţile. 7. Tabelul este deschis în fereastra Design şi vă permite să efectuaţi modificări în structura bazei de date: .Stabilirea cheii principale(executaţi click pe butonul Primary Key situate în bara de instrumente Standard din fereastra principală a programului Access sau click dreapta şi Primary key. 13. Repetaţi pentru a continua să adăugaţi câmpuri. în locul acestora. 6. Se deschide caseta de dialog Save As.Adăugarea şi ştergerea unui nou câmp . executaţi click pe un alt câmp pentru ai vizualiza proprietăţile 4. pentru a-l selecta. şi selectati un nou tip de dată din lista care apare pe ecran. Executaţi click pe tabelul pe care doriţi să-l deschideţi. pentru despărţirea cuvintelor folosindu-se caracterul liniuţă de subliniere (underscore). acces pa solicita să stabiliţi o cheie primară. Vizualizarea structurii unei tabele în fereastra Design 11. Executaţi click pe butonul Design situate în bara cu instrumente din fereastra bazei de date. Tastaţi un nume pentru table si executaţi click pe OK. Pentru salvarea tabelului. 9. executaţi click pe butonul Close. Acest text apare pe bara de stare a ferestrei Table atunci când introduceţi date şi acest câmp este selectat. tabelul este salvat. 10. 8. cu altul. se observa că proprietăţile diferă în funcţie de tipul de câmp. 4.Stabilirea dimensiunii unui câmp de text/numeric . 12.Schimbarea tipului de date pentru un câmp .

executaţi click pe Next pentru a continua. 9. click câmpul Format 2. executaţi click Finish. 6. 2. 1. după selecţia formatului executaţi click pe butonul Save (bara Standard). 5. 4. Utilizarea unei măşti de intrare Validarea datelor folosind măştile de intrare – deoarece măştile de intrare necesită introducerea unui anumit număr de caractere. Realizarea unui format personalizat 1. 8. Input Mask Wizard permite salvarea modificării – cu sau fără simbolurile utilizate in masca de intrare. Access va solicita să salvaţi baza de date înainte de a continua. 3. salvam (Save) 13. executaţi click în câmpul Input Mask (masca de intrare). se tastează operatorul > 24 . după selecţia tabelului (angajat) în fereastra Design executaţi click in câmpul căruia doriţi să-i aplicaţi o mască de intrare. ne comutam la fereastra Datasheet 14. primul ecran afişează o lista de măşti de intrare disponibile. pentru a salva modificarea în tabel. 7. Daca selectam Edit list este posibilă crearea unei noi intrări.date. executaţi click pe săgeata în jos şi selectaţi din lista afişată pe ecran formatul pe care doriţi să-l utilizaţi. ne poziţionăm cu cursorul pe câmpul înaintea căruia dorim să inserăm o nouă linie şi din meniului asociat evenimentului click dreapta sau meniu Insert > Rows (bara de instrumente Standard a programului Access). tipul de date. apoi se introduce câmpul. Caracterul de înlocuire sunt acele care apar în foaia de date atunci când introduceţi date în câmpul de intrare. 2. pentru a testa masca tasaţi o valoare în caseta de text Try It. În lista Placeholder character (caracter de înlocuire). executaţi click Next. apare pe ecran o săgeată în jos. 4. 5. 11. în fereastra de proprietăţi. Dacă sunteţi mulţumit de ceea ce aţi obţinut. Selectaţi opţiunea dorită şi executaţi click pe Next. Apare pe ecran următoarea fereastră a aplicaţie expert. Access lansează în execuţie Input Mask Wizard. toate intrările vide din acest câmp conţin masca de intrare. executaţi click pe butonul Save situat în bara cu instrumente Standard a programului Access. La dreapta câmpului apare un buton pe care se afla puncte de suspensie. în cazul în care dorim să adăugăm un nou câmp se deschide tabelul in vederea Design 6. În acest scop. executaţi click pe punctele de suspensie. trebuie să salvaţi baza de date. utilizând sistemul de asistenta al programul Access pentru instrucţiuni specifice. 10. noua mască de intrare este adăugată la foaia de proprietăţi: 12. în fereastra proprietăţi click pe câmpul Format . descrierea (opţional) şi stabilirea proprietăţilor pentru respectivul câmp: Utilizarea formatului de afişare 1. Selectaţi masca de intrare pe care doriţi sa o aplicaţi acestui câmp. executaţi click pe caracterul care doriţi sa fie afişat de Access ca marcaj de rezervare in masca de intrare. în dreapta câmpului 3. Executaţi click pe YES. 7.

datele existente nu sunt afectate de aceasta modificare. 2. se tastează valoarea prestabilită înscrisă între ghilimele. În urma introducerii operatorului “ >” toate caracterele introduce vor fi transformate automat în majuscule. în fereastra de proprietăţi click în câmpul Validation Rule. funcţii şi constante. Introducerea unei valori prestabilite Daca introduceţi frecvent aceeaşi valoare într-un câmp. puteţi defini o valoare prestabilita. Textul de validare(Validation Text) reprezintă textul care va apărea în cazul in care valoarea introdusă nu respecta criteriul impus de regula de validare. identificatori. Valoarea prestabilită poate fi oricând modificată. 3. 1. valoarea introdusă într-un câmp. apare ce ecran fereastra Expression Builder şi aici construiţi interactiv regula de validare folosind operatori. 4. Câmpuri care nu pot fi null 25 . Doar noile înregistrări vor fi utiliza valoarea prestabilită.3. pentru a introduce o valoare prestabilită executaţi click pe câmpul Default Value (Valoarea prestabilita) 2. valoare prestabilita este inclusa în structura tabelei baza de date 4. Datele existente vor fi şi ele afectate de aceasta modificare. click Save. expresia este adăugată la lista de proprietăţi: 6. executaţi click pe punctele de suspensie 3. click Save. 1. Ok 5. Reguli de validare Regulile de validare testează conform criteriului furnizat sub forma unei expresii Access. Save.

2. În Row Source. Introducerea datelor în tabele Modul de vizualizare Datasheet View permite introducerea de date în tabel. tabelul este vid. în foaia de proprietăţi click în câmpul Required (obligatoriu). se selectează Value List. fiind sarcina utilizatorului. 6. executaţi click pe opţiunea Tables din bara Objects pentru a afişa tabelele disponibile in respective baza de date. 6. 4. 3. este necesar ca numărul de indecşi să fie minim. 1. se introduc valorile separate prin virgula. se selectează Combo Box. veţi vedea pe ecran un mesaj de eroare. Save Indexarea după un câmp Dacă la definirea structurii unei tabele nu se specifică pentru un câmp anume că reprezintă cheie primară. 4. 26 . 2. sau dublu-click mouse. Aceste sunt necesare pentru a accelera optimiza interogarea bazei de date. Pentru a naviga printre înregistrările tabelului se foloseşte bara navigation bar din partea inferioara a ecranului: 8. 5. În secţiunea Field Properties se selectează opţiunea Lookup. Dacă aţi introdus înregistrări în tabel. 9. 5. 1. Pentru a adăuga înregistrări în tabel (liniile tabelei reprezintă date propriu-zise). Când se specifică un câmp ca fiind cheie de index se poate preciza că respectivul câmp conţine o intrare unica (adică nu conţine valori duplicat) sau sunt permise valori duplicat. Executaţi click pe butonul Open situate în bara cu instrumente din fereastra bazei de date. 1. În această fereastră. Lucru util pentru câmpurile care conţin valori care ar trebui sa fie unice. iar imediat sub ele se completează înregistrările propriu-zise ale tabelului. se deplasează în câmpurile de interes şi se modifica valorile existente cu alte valori noi. Pentru deplasarea printre câmpurile unei înregistrări se foloseşte tasta Tab. Salvarea datelor introduse se face automat la închiderea ferestrei. iar pentru deplasarea printre înregistrările tabelului tastele săgeată sus şi jos. Tabela poate avea mai multe chei alternante. Pentru a şterge o înregistrare se navighează pe înregistrarea de interes şi apoi se foloseşte fie comanda Delete din meniul Edit. ACCESS include în structura tabelei un câmp cu numele ID care reprezintă numărul de înregistrare şi care va fi desemnat de sistem ca fiind cheie primară. Se selectează câmpul. Deoarece indexarea câmpurilor creşte timpul necesar pentru operaţiile de actualizare. fie aceeaşi comandă Delete din meniul asociat evenimentului click dreapta mouse. În Row Source Type. 2. Dacă încercaţi să introduceţi o noua înregistrare cu o valoare care se repetă într-un câmp indexat care nu accepta dubluri. acestea sunt vizibile în caz contrar. click săgeată în jos şi selectaţi Yes (imaginea de mai sus) 3. Save. Pentru a stabili care este cheia principală se selectează câmpul după care se selectează butonul primary key . astfel că utilizatorul va fi obligat să specifice o valoare. Pentru a modifica datele existente. acest câmp necesită acum o intrare. 4. Pentru un tabel vid apare afişată doar o singură linie goală. În lista ascunsă Display Control. Introducerea unei valori pentru un câmp este impusă prin activarea proprietăţii Required pentru câmpul respectiv. După de aţi deschis baza de date care conţine tabelul pe care doriţi să-l deschideţi. În partea de jos a ecranului observaţi numărul afişat de înregistrări conţinute de tabel. se tastează simplu valorile corespunzătoare fiecărui câmp în parte. 3. câmpurile (coloanele) apar ca şi cap de tabel în partea superioara a ferestrei.Pentru anumite câmpuri dorim să ne asigurăm că se vor introduce date. Ordonarea elementelor listei nu se realizează automat. 3. se navighează pe înregistrarea dorita. Se deschide fereastra Design View de definire a structurii tabelei. sau câmpuri care reprezintă chei de indexe. Selectarea unei valori dintr-o lista predefinita de valori În cazul în care pentru un cîmp exită o listă de valori prestabilite se poate asocia lista respectivă cîmpului şi astfel la introducerea datelor valoarea va fi selectată din listă. 7. click campul Indexed 2. 1. Tabelul se deschide în vederea Datasheet. click sageata în jos şi din lista care apare pe ecran executaţi Click Yes (Duplicates OK) sau No (No Duplicates).

le putem re-dimensiona în funcţie de necesităţi. Access vă solicită să confirmaţi ştergerea. Când se apasă tasta Tab. 1. pregătită pentru a primi noi înregistrări. deschideţi meniul Format > Unfreeze All Columns. Sortarea înregistrărilor în fereastra Datasheet 27 . deschideţi meniul Format şi selectaţi Hide Columns 3. deschideţi meniul Format > Unhide Columns 4. Ascunderea coloanelor O modalitate simplă de a va concentra pe anumite câmpuri din tabel este ascunderea coloanelor. afişând coloanele din tabel. Coloanele însoţite de o caseta de validare sunt ascunse. 1. 4. respectiv mări coloana. Ştergerea unei înregistrări O ştergere nu poate fi anulata. după ce aţi completat ultimul câmp al liniei curente. 2. se deschide meniul Format > Freeze Columns. selectarea coloanei pe doriţi să o fixaţi. 1. 1. Pentru a afişa din nou coloana ascunsă. astfel încât nu le putem vedea pe toate în fereastra de vizualizare. adică înregistrarea ştearsă nu poate fi refăcută. eliberaţi butonul mouse. selectaţi coloana pe care doriţi să o mutaţi. respectiv dreapta. pentru a anula. deschideţi meniul Edit şi selectaţi Delete Records 3. înregistrarea este ştearsă. 2. Executaţi click pe Yes 4. plasaţi cursorul mouse pe marginea din dreapta a coloanei pe care doriţi să o redimensionaţi. Fixarea coloanelor Dacă o tablă are multe coloane. Copierea unei înregistrări 1. Executaţi click pentru a o bifa şi a afişa coloana. dar în loc să utilizaţi Edit > Copy utilizaţi Edit > Cut. deschideţi meniul Edit şi selectaţi Paste Append 5. selectaţi înregistrarea pe care doriţi sa o copiaţi 2. 4. 3. 4. când linia verticală a ajuns în poziţia dorită. coloana este mutată. pentru a redimensiona liniile se procedează similar. se deschide caseta de dialog Unhide Columns. care nu sunt relevante pentru ceea ce lucraţi în acel moment. Access o mută pe primul luc în fereastra de vizualizare. 6. 1. Pentru a adăuga o nouă înregistrare. coloana este redimensionată. pentru a micşora. executaţi click pe marginea coloanei şi după fixare ţinând butonul mouse apăsat deplasaţi mutaţi marginea spre stânga. executaţi click pe butonul New Record (bara de navigare) a ferestrei tabelului sau click dreapta New record. astfel încât aceasta să rămână pe ecran. trageţi coloana în noua poziţie. 2. 5. 2. se afişează o linie verticală. Access salvează înregistrarea din acea linie şi creează o înregistrare nouă şi goală.10. Procedeul poate fi utilizat şi pentru a muta o înregistrare dintr-un loc în altul. Cursorul mouse-ului îşi sugerând poziţionare pe marginea coloanei. coloana este fixată. Totuşi. coloana este ascunsa. selectaţi înregistrarea pe care doriţi sa o ştergeţi 2. deschideţi meniul Edit şi selectaţi Copy 3. In timp ce trageţi. Fiecare coloana este însoţită de o caseta de validare. înregistrarea copiată este scrisă şi poate fi editată funcţie de necesităţi. Redimensionarea coloanelor Toate coloanele unui tabel au aceeaşi mărime. În acest caz se poate fixa coloana de care avem nevoie. executaţi click pe coloana pe care doriţi sa o ascundeti. În momentul in care am “fixat” coloana. Close. 3. 3. Rearanjarea coloanelor Schimbarea structurii tabelului propriu-zisa nu este afectata de schimbarea ordinii coloanelor în fereastra de vizualizare. coloanele ascunse vor fi afişate. executaţi click în linia goală de la baza tabelului 4.

Regăsirea datelor şi înlocuirea datelor 1. Dacă nu este înregistrarea de dcare este nevoie. liniile de grila. executaţi click pe săgeata în jos de lângă câmpul Gridline Color şi selectaţi o culoare din lista care apare pe ecran. executaţi click pe OK. 3. 5. 6. pentru a reveni la ordinea iniţială. selectaţi butonul de opţiune Right-to-left al casetei de dialog Datasheet Formatting 10. Zona Sample din caseta de dialog Datasheet Formatting afişează o imagine în care puteţi vedea schimbările înainte de aplicarea acestora. opţional pentru a căuta în tabel. apare pe ecran caseta de dialog Datasheet Formatting 3. Raised (reliefat) sau Sunken (adancit) din zona Cell Effect pentru a preciza cum ar trebui să arate celulele din tabelă. 8. Pentru sortare se poate utiliza comenzile din meniul Records > Sort > Sort Ascending sau Sort Descending. Daca sunteţi mulţumit de noul aspect al tabelei. executaţi click pe butonul Find Next pentru a găsi următoarea apariţie a valorii căutate. executaţi click pe săgeata în jos de lângă câmpul Match şi selectaţi Whole Field. deschidem meniul Format > Datasheet 2.pentru a inverse ordinea coloanelor. Executaţi click pe OK. deschideţi meniul Edit şi selectaţi Fiind. pentru a schimba stilul de linie al chenarului tabelei. Daca doriţi să aveţi posibilitatea de a reveni la ordinea iniţială. executaţi click Cancel. Any Part of Field sau Start of Field. 6. afişând rubrica fiind. executaţi click pe butonul Find Next. 5. Se repetă operaţia de care ori este necesar. din zona Border and Line Styles 7. 2. respectiv sublinierea titlurilor de coloană. executaţi click pe butonul Sort Ascending/Sort Descending. înregistrarea a fost sortată. 3. executaţi click pe coloana sau câmpul după care doriţi să efectuaţi căutarea. selectati Flat (plat). 9. 4. executaţi click în câmpul sau coloana după care doriţi sa se realizeze sortarea. executaţi click pe săgeata în jos de lângă câmpul Look in şi selectaţi numele de tabel care apare pe ecran. selectaţi articolul de schimbat din lista derulanta din partea stângă. După aceea puteţi sorta înregistrările din tabel după acest câmp. pentru a aplica o culoare de fundal tabelului. Formatarea conţinutului ferestrei Datasheet 1. 7. inversarea ordinii coloanelor . În câmpul Find What tastaţi valoare de căutat şi atunci când este cazul noua valoare pentru înlocuire. executaţi click sageata in jos de lângă câmpul Background Color şi selectaţi o culoare din lista care apare pe ecran. caseta de dialog Find and Replace se deschide. 2. Access anunţa când nu mai găsesc alte apariţii. Pentru exemplificări folosim o bază de date numită Aprovizionare care are patru tabele cu următoarea structură: Furnizor Denumire Semnificaţie Tip câmp Codfz Codul furnizorului Number(Long Integer) PK Denfz Denumirea furnizorului Text(50) Adrs Adresa furnizorului Text(50) Codf Codul fiscal al furnizorului Number(Long Integer) Banca Banca unde are deschis cont Text(30) furnizorul Cont Numarul contului in banca Text(24) Factura Denumire câmp Semnificaţie Tip 28 .1. al liniilor de grila sau al sublinierii titlului de coloană. tabelul este formatat cu elementele selectate. 4. Access localizează şi selectează înregistrarea care conţine prima intrare care corespunde datelor căutate. executaţi click săgeata în jos de lângă câmp situate în extremitatea dreapta în zona Border and Line Styles şi selectaţi un stil de linie pentru chenarul tabelei. includeţi în structura tabelului un câmp de tip Autonumber. care numerotează în mod automat înregistrările din tabel. 8. Pentru a închide caseta de dialog Find and Replace. pentru a schimba culoarea liniilor de grila din tabel.

• mai mulţi la mai mulţi (many to many). Relaţiile care se pot stabili între tabele sunt de 3 tipuri: • unu la unu (one to one). executaţi click pe butonul Add. Relaţii permanente – care se stabilesc după definirea tabelelor şi sunt considerate de modelul relaţional ca făcând parte din structura bazei de date. exista 2 tipuri de relaţii între tabelele unei baze de date Access şi anume: 1. îl puteţi şterge din fereastra executând click – dreapta pe fereastra tabelului si selectand Hide Table din meniul rapid care este afişat. pe ecran este afişata o fereastra reprezentând tabelul (tabelele) adaugate: 29 . 2. 2. • unu la mai mulţi (one to many). formulare şi rapoarte care să extragă date din tabelele bazei de date. În majoritatea cazurilor. nefiind înregistrate în structura bazei de date. Executaţi click pe primul tabel pentru care doriţi sa stabiliţi o relaţie pentru a fi selectat. Daca adăugaţi din greşeala un tabel în fereastra Relationships. Se urmează paşii de mai jos pentru crearea relaţiei între doua tabele: În fereastra bazei de date meniul Tools > Relationships sau de pe bara de instrumente Standard butonul : sau 1. aceste câmpuri comune sunt: cheia primara a unui tabel (primary key care furnizează o identificare unică a fiecărei înregistrări din tabelul respectiv) şi cheia externa (foreign key) a unui alt tabel. O relaţie funcţionează pe baza unor câmpuri comune ale tabelelor. acestea pot fi relaţionate pe baza câmpurilor comune. Explicitarea acestei relaţii in Access se face prin intermediul ferestrei Relationships. astfel încât să se poată proiecta pe baza lor structuri de interogare. cu rubrica Tables in prim-plan. 3. formulare si structuri de interogare care vor avea folosi mai multe tabele. Relaţii temporare – se stabilesc între tabele cu ocazia definirii unor cereri de interogare. După definirea mai multor tabele în baza de date. În baza de date nu este obligatoriu ca între tabele să existe relaţii. Access va utiliza aceasta informaţie atunci când va proiecta rapoarte. Acestea se realizează de obicei prin corespondentele cheie primară – cheie externă şi sunt memorate în baza de date. se deschide caseta de dialog Show Table.Nrfact Datafact Codfz Linie_factura Denumire câmp Nrlinie Nrfact Codp Cant Produs Denumire câmp Codp Denp Um Pretu Numarul facturii Data la care a fost emisa factura Codul furnizorului Number(Long Integer) PK Date/Time Text(50) FK Semnificaţie Numar linie factura Numarul facturii Codul produsului Cantitatea intrata Tip Number(Long Integer) PK Number(Long Integer) FK Number(Long Integer) FK Number(Long Integer) Semnificaţie Codul produsului Denumirea produsului Unitatea de masura Pretul unitar Tip Number(Long Integer) PK Text(50) Number(Long Integer) Number(Long Integer) Crearea de relatii între tabele(Relationships) Din punct de vedere al momentului creării relaţiilor.

7. unde se pot stabili opţiuni privind funcţionarea relaţiei pe care a-ţi stabilit-o. Select Enforce Referential Integrity Aceasta opţiune are o acţiune de constrângere astfel încât o înregistrare din tabelul furnizor nu poate fi creat fără a avea un client valid in codfz. orice schimbare in tabela primara va determina modificarea automata a valorilor corespunzătoare din înregistrările relaţionate.4. 30 . Utilizarea sub-foilor de date Atunci când sunt legate două tabele avem posibilitatea ca în fereastra de vizualizare a tabelei părinte să activăm o subfereastră prin intermediu căreia puteţi consulta înregistrarea fiică cu care este legată. executaţi click pe butonul Close din fereastra Relationships. 9. Ecranul Relationships va reapare astfel: Simbolul "1" indică partea "One" a relaţiei şi simbolul infinit indică partea "Many" a relaţiei. pentru a stabili legătura dintre doua tabele se trage (drag) câmpul primary key al tabelului părinte (furnizor în acest caz). 5. 8. 10. . 6. iar Access va preveni de asemenea utilizatorul în momentul în care ar dori să şteargă o înregistrare din tabelul furnizor care are înregistrari relaţionate în tabelul factura. ştergerea unei înregistrări din tabela părinte va determina ştergerea automata a tuturor înregistrărilor corespondente din tabelul relaţionat. după ce tabelele au fost selectate click pe butonul Close. Click pe Create şi salvaţi relaţia. executaţi click pe butonul Save ca sa salvaţi relaţia.Atunci când opţiunea Cascade Delete Related Records este bifată. se deschide caseta de dialog Edit Relationships. ca să o închideţi.Atunci când opţiunea Update Related Fields este bifată. Pentru a şterge o relaţie vom da click pe linia creată pentru a o selecta şi apoi se apasă tasta Delete de pe tastatură. Datele din sub-foaie pot fi editate. . şi se eliberează peste (drop) acelaşi câmp din tabelul copil (factura in acest caz). Verificaţi sa fie enumerate drept câmpuri legate câmpurile corecte.

31 . interogări de acţiune.Dacă aţi configurat relaţia impunând integritatea referenţială. Ele permit şi modificarea rezultatului afişat. • interogarea altor baze de date existente în sisteme de gestiune a bazelor de date cum sunt FoxPro. Microsoft Access oferind următoarele posibilităţi: • selectarea anumitor câmpuri semnificative din înregistrările unei tabele. • interogarea mai multor tabele. Pentru a ascunde sub-foaia de date. • Criteria . Paradox. interogări parametrice. Interogările pot accesa un tabel sau mai multe tabele. datele din tabelul corelat cu acesta sunt afişate. alegând tabelele care conţin interogarea şi cel mult 255 de câmpuri ale acestora. 3. interogări încrucişate. iar secţiunea inferioară este o grilă care va conţine acele câmpuri selectate pentru a fi afişate. Structuri de interogare (Query) O interogare (query) este o definiţie unei tabele virtuale care foloseşte date din tabele reale. se deschide tabel părinte.Indică criteriul după care sunt filtrate înregistrările . modificare ce va fi văzută şi în tabelul sursă. Microsoft SQL Server.Numele câmpului din tabel • Table .Se bifează sau nu după cum se doreşte sau nu afişarea câmpului respectiv ca rezultat al rulării interogării. formulare sau alte interogări. • sortează înregistrările într-o ordine particulară. Descending sau Not Sorted) • Show . legat. Fereastra de definire a structurii de interogare Query Design view are două secţiuni principale. o structură de interogare poate fi sursă de înregistrări pentru crearea unui formular sau a unui raport. modificările vor fi efectuate şi salvate în tabelul original. 1.Ordinea de sortare în cadrul câmpului (Ascending. se execută click pe semnul minus de lângă înregistrare. criteriile de selecţie. se dă click pe semnul plus de lângă înregistrarea a cărei sub-foaie de date doriţi să o vedeţi. permit şi folosirea de parametri. ordinea de sortare. Odată construită. Fiecare câmp are câteva opţiuni asociate: • Field . care: • afişează doar anumite câmpuri (coloane). dBase. Interogările de selecţie extrag informaţii din unul sau mai multe tabele şi le afişează sub formă de listă. În Access se pot crea următoarele tipuri de interogări: interogări de selecţie. Btrieve. o interogare permite combinarea înregistrărilor din mai multe tabele şi afişarea rezultatului într-un singur tabel virtual. Rolul fundamental al structurilor de interogare (Queries) este acela de a accesa şi afişa date din tabele. Interogările afişează datele conţinute în cel mult 16 tabele. • crearea de rapoarte. Această structură include câmpuri din tabele legate. • selectarea înregistrărilor care satisfac anumite criterii. Interogările uni-tabel sunt utilizate pentru vizualizări de date dintr-un tabel. Cu ajutorul lor se poate indica modul în care să fie prezentate datele. De asemenea. sub-foaia de date este ascunsă. Structura unei interogări indică datele care se vor extrage. • sortarea înregistrărilor într-o ordine precizată de utilizator.criteriul se specifică în câmpul (câmpurile) în care se aplică filtrarea valorilor respective. În secţiunea superioară va afişa tabelul (tabelele) folosit(e) de interogare împreună cu câmpurile respective disponibile. 2. cum este reuniunea de câmpuri din tabele între care nu există nici o legătură. • crearea de câmpuri pentru afişarea rezultatelor unor calcule.Tabelul din care provine câmpul selectat • Sort .

Formularul se defineşte pentru un tabel real sau virtual. Alegerea tipului de interogare se face selectând opţiunea corespunzătoare din meniul Query. de ştergere dintr-un tabel. • interogări de ştergere a unor înregistrări dintr-un tabel. la fel ca o foaie de calcul tabelar. Aceasta permite utilizatorilor să găsească şi să afişeze informaţiile de care au nevoie. Chart form afişează datele sub formă grafică. 2. • pentru adăugarea într-un tabel – numele tabelului ce urmează a fi încărcat cu date. sunt disponibile următoarele tipuri de formulare: . putem folosi opţiunea Run a meniului Query. 32 . se vor parcurge următorii paşi: 1. 7. precum şi câmpurile destinaţie. conform cu o condiţie ce trebuie îndeplinită. În funcţie de modul de afişare. o funcţie parametru putând fi folosită pentru toate celelalte interogări prezentate mai sus. specificarea expresiilor de calcul pentru câmpurile care sunt rezultatul unor operaţii executate asupra unora dintre câmpurile deja existente.Continuous form permite vizualizarea mai multor înregistrări. • filtrează înregistrările folosind anumite criterii.Single form afişează doar înregistrarea curentă. Interogările încrucişate centralizează în formatul unei foi de calcul tabelar datele din unul sau mai multe tabele. Pentru a rula interogarea avem la dispoziţie butonul din bara de instrumente pe care este desenat semnul exclamării de culoare roşie sau. cu deosebirea că la fiecare execuţie trebuie specificată valoarea parametrului în funcţie de care se va realiza selecţia. 3. În general. • pentru actualizare – condiţiile de actualizare şi valoarea la care se doreşte actualizarea. • interogări de actualizare a unor înregistrări dintr-un tabel. Acest lucru se poate face fie prin scrierea directă a formulei. 5. Este folosit pentru un acces aleator la înregistrări. de adăugare într-un tabel. modificarea sau ştergerea de înregistrări într-un tabel. iar în cazul ultimelor trei dintre ele. 4. În funcţie de opţiunea aleasă. împreună cu butoanele de comandă. fie formând un criteriu compus aplicat aceluiaşi câmp. stabilirea criteriilor de selecţie şi a câmpurilor asupra cărora vor fi aplicate. Parametrii funcţionează pentru interogări asemănător criteriilor de selecţie. Interogările de acţiune creează un nou tabel în baza de date sau realizează modificări majore ale unui tabel existent. dar poate fi tipărit şi la imprimantă. Formulare ACCES Formularele (formele) sunt machete (ferestre) folosite pentru consultarea şi reactualizarea datelor.Datasheet form afişează datele sub formă de linii şi coloane. în mod echivalent. Realizarea de interogări asupra mai multor tabele folosind relaţiile stabilite între tabele pentru a manipula astfel datele care satisfac cerinţele interogării. trebuie urmărită păstrarea integrităţii referenţiale atunci când prin intermediul lor se acţionează asupra mai multor tabele legate. de generare a unui tabel. de actualizare a unui tabel. Access modifică designul interogării şi cere informaţii suplimentare astfel: • pentru generarea unui tabel – numele tabelului ce urmează a fi creat. stabilirea parametrilor de selecţie. .• efectuează calcule folosind expresii de anumite tipuri. ele folosesc în mod repetat o interogare. stabilirea tipului de sortare a datelor afişate ca rezultat şi a câmpurilor asupra cărora va acţiona. Ele permit adăugarea. Datele rezultate după execuţia unei astfel de interogări sunt prezentate într-un format potrivit pentru analiza datelor şi crearea de grafice. Formularul are ca destinaţi ecranul. casetele de text şi alte controale. . fie prin apelarea constructorul de expresii un utilitar inclus în ACCESS. Pentru a crea o nouă structură de interogare în modul Query Design. selectarea câmpurilor care se vor transforma în coloanele tabelului virtual rezultat al interogării. se poate apela la un singur criteriu de selecţie sau la mai multe criterii. • pentru ştergere – numele tabelului din care se va şterge şi condiţia de ştergere. 6. selectarea tabelelor din care se doresc a fi afişate/prelucrate datele. efectuând modificări în criteriile de selecţie. toate interogările de acţiune pot fi realizate pe baza unei interogări de selecţie. Interogările parametrice nu sunt un tip special de interogări. alegerea tipului de interogare prin selectarea din meniul Query a uneia dintre opţiunile: de selecţie. Spre deosebire de rapoarte. Există patru tipuri de interogări de acţiune: • interogări de generare a unui nou tabel din datele conţinute în setul de rezultate al interogării. încrucişată. aplicate fie unor câmpuri diferite. dacă se tipăreşte un formular la imprimantă apar şi culorile de fundal. • interogări de adăugare a noi înregistrări într-un tabel. Crearea manuală a interogărilor se realizează prin intermediul utilitarului Query Design care foloseşte o interfaţa grafică de tip Query by Example (QBE). Acţiunile acestora sunt ireversibile asupra datelor din tabelele sursă.

buton de comandă Command Button creează un buton care la selectare comută un eveniment ce execută o macroinstrucţiune sau o procedură VBA. de definire formular (formă). iar înregistrarea datelor se face pe linie. Poate avea ca sursă chiar un alt tabel decât sursa de date. ele pot sau nu să fie însoţite de etichete.etichetă Label creează o casetă ce conţine un text.caseta de listă List Box creează o casetă ce cuprinde o listă derulantă de opţiuni.Formularele din Access creează interfaţa utilizatorului cu tabelele. adăugarea sub-formularului şi crearea legăturilor cu formularul de origine. AutoForm: Columnar creează un formular în care fiecare câmp apare pe o linie separată având în stânga numele. stabilirea tipului de formular dorit. Principalele obiecte de control vizibile pe caseta Toolbox sunt: . 3. Utilizatorului i se pune la dispoziţie un tabel liber şi caseta cu instrumente Toolbox. . obiecte de control asociate sunt obiecte ataşate unui câmp din sursa de date a formularului. Sunt numite astfel pentru că li se poate schimba în mod dinamic aranjarea astfel încât să analizeze datele selectate în diverse moduri. 3. Chart Wizard creează un formular în care datele sunt afişate sub forma unui grafic. programul foloseşte aplicaţia Microsoft Excel pentru a crea tabelul pivot. în funcţie de forma de afişare. . În cadrul unui astfel de grup poate fi activ un singur obiect de control. 2. . AutoForm: PivotChart creează un formular în care sunt afişate sub formă grafică date calculate. 2. Crearea manuală a formularelor cu Design View realizează în mod interactiv folosind o sursă de date (tabel real sau virtual) care va conţine date pentru care se defineşte formularul folosind o fereastră. stabilirea surselor de date care pot fi unul sau mai multe tabele/interogări.buton de opţiune Option Button creează un buton rotund cu un comportament identic cu cel al unui buton comutator. Prin intermediul lor se poate opere direct asupra datelor fie dintr-un tabel. fiecare înregistrare reprezentând un nou tabel. ele afişând şi actualizând valorile datelor câmpului asociat din înregistrarea curentă. AutoForm: PivotTable creează un formular în care sunt afişate date calculate – vezi punctul 9 pentru mai multe detalii. obiecte de control calculate sunt obiecte ce folosesc expresiile calculate. ca sursă de date.casetă de validare Check Box creează o casetă de validare care comută între stările on şi off. 33 . Ele permit realizarea unor obiective ce nu pot fi îndeplinite prin lucrul în mod direct cu tabelele. crearea unui sub-formular dacă este necesar. Pivot Table Wizard creează un formular în care sunt afişate datele calculate. obiecte de control neasociate sunt obiecte care afişează datele independente de sursa de date a formularului. AutoForm: Tabular creează un formular în care numele câmpurilor apare o singură dată în capătul de sus al formularului.buton comutator Toggle Button creează un buton cu două stări on/off. În formularele Access se pot insera trei tipuri de obiecte de control: 1. respectiv no (0). . . care sunt o colecţie de elemente specifice de proiectare destinate fie afişării datelor. Lista obiectelor ce pot fi inserate în formular este pusă la dispoziţia utilizatorului prin intermediul grupului de butoane Toolbox. Form Wizard generează un formular pe baza câmpurilor selectate din unul sau mai multe tabele sau interogări.caseta combinată Combo Box creează o casetă combinată for-mată dintr-o casetă de text editabilă şi o casetă de listă. . 6. . . în care vor fi inserate diverse tipuri de obiecte. alegerea obiectelor de control necesare şi configurarea lor conform cu necesităţile de afişare şi editare în cadrul formularului.submachetă Subform ataşează unei machete o sub-machetă deja existentă. configurarea zonelor de antet şi de subsol atât la nivelul întregului raport cât şi la nivelul fiecărei pagini. 5. de opţiune sau casete de validare. corespunzătoare stărilor . în timp ce în Microsoft Access se creează formularul în care acesta va fi inclus. AutoForm: Datasheet creează un formular în care datele sunt afişate sub forma foilor de calcul tabelar. . Crearea formularelor ACCESS oferă următoarele metode de realizarea a formularelor: Design View permite crearea manuală a formularelor. Pentru a crea manual un formular se parcurg următorii paşi: 1.yes (-1).grup de opţiune Option Group creează o casetă în care se pot plasa butoane comutatoare. 4. Formularele sunt compuse din obiecte de control. Toate obiectele de acest fel sunt însoţite de etichete ce afişează titlul câmpului căruia îi sunt ataşate.caseta de text Text Box creează o casetă ce afişează şi permite editarea datelor de tip text.

Raportul constituie cea mai bună modalitate de a tipări informaţiile extrase din baza de date. 3. Ele se numesc rapoarte asociate sursei de date. În ACCESS există şase tipuri de rapoarte de bază: 1. Prin selectarea acestei opţiuni se va deschide o fereastră de proiectare raport şi instrumentele de lucru. plasând valoarea fiecărui câmp al înregistrării pe linii plasate sub capul de coloană. prin divizarea paginii în mai multe coloane asemănător tipăririi ziarelor. însă nu şi crearea acestora.Opţiunine AutoReport realizează un raport într-un singur pas. Spre deosebire de formulare. Pot fi modificate proprietăţile obiectelor de control din cadrul unui raport astfel încât să fie actualizat în mod dinamic. Primele patru tipuri de rapoarte utilizează ca sursă de date o tabelă sau o structură de interogare. Raportul principal al unui raport neasociat nu este legat la o tabelă sau structură de interogare. final. rapoartele au mai multe posibilităţi de sortare. Page Footer zonă rezervată pentru sfârşitul de pagină. trecând prin aceleaşi etape şi folosind aceleaşi obiecte de control. Dacă există mai multe coloane şi nu încap pe o pagină. 4. 2. Access permite manipularea rapoartelor prin programele de aplicaţie. Page Header zonă rezervată începutului de pagină. rapoartele neasociate conţin subrapoarte care au la bază surse de date nelegate. de prezentare a informaţiilor extrase din baza de date în formă tipărită. etichetele pentru corespondenţă constituie un tip deosebit de raport multicoloană.Opţiunea Design View permite construirea manuală a unui raport. Raportul este structurat pe următoarele secţiuni: Report Header zonă rezervată începutului de raport. rapoartele multi-coloană se obţin din rapoartele cu o singură coloană. Crearea unui nou raport este asemănătoare cu cea de creare a formularelor. subtotaluri şi rezumate. Detail zonă rezervată pentru descrierea linilor curente (de detaliu) din cadrul raportului. 6. cum ar fi tabele sau interogări. 5. tabelă reală sau virtuală. Raportul parcurge secvenţial înregistrările sursei de date. Report Footer zonă rezervată sfârşitului de raport. Machetele de raport pot fi stocate pe disc pentru a fi tipărite ulterior. rapoartele dispuse pe linii furnizează câte o coloană pentru fiecare câmp al sursei de date. 34 . rapoartele cu grupare/totalizare sunt similare rapoartelor create de alte aplicaţii de gestiune a bazelor de date. în ordine până la epuizarea numărului de coloane. Însă subrapoartele conţinute într-un raport neasociat trebuie să fie asociate unei surse de date. Crearea rapoartelor Modul de generare a unui raport prin folosirea programelor Wizard este asemănător cu cel prin care se generează formularele folosind ReportWizard: . Ele însumează datele pe grupuri de înregistrări şi adaugă la sfârşitul raportului informaţii statistice de tip total general.Rapoarte ACCES Raportul este formatul extern. grupare şi calculare a datelor. se tipăreşte următorul grup de înregistrări. apoi. proiectat pentru a tipări în mod grupat nume şi adrese sau alte informaţii provenite din mai multe câmpuri. . se tipăresc mai multe pagini suplimentare. putând fi grupate 10 nivele. rapoartele cu o singură coloană afişează pentru fiecare înregistrări din sursa de date toate câmpurile plasate unul sub altul. limitările constau dint posibilitatea selectării datelor dintr-o singură sursă. pentru a tipăriri datele oferind posibilitatea de a insera totaluri. de a grupa datele pe un număr de până la 10 niveluri diferite şi subrapoarte imbricate pe maxim trei niveluri. Raportul nu permite editarea şi modificarea datelor.

Anumite interogări SQL. . În momentul creării unei interogări în modul de interogare Design. ştergerea sau modificarea structurilor tabelelor. De altfel. LIMBAJUL SQL 5. nu pot fi create în grila de generare a interogărilor. Este vorba de: .CAP.interogările definiţii de date ce permite crearea. Aceste interogări sunt foarte utile în fuzionarea înregistrărilor ce provin din tabele diferite. numite interogări specifice limbajului SQL. ci trebuie să fie scrise direct în modul SQL. majoritatea proprietăţilor interogărilor în modul de interogare Design prezintă clauze echivalente şi opţiuni accesibile în limbajul SQL. Access foloseşte SQL ca limbaj de interogare. Prezenate limbaj SQL Limbajul SQL (Structured Query Language sau limbajul structurat de interogări) este un limbaj de interogări şi gestionare a bazelor de date relaţionale.2.5.interogările Union ce permit regruparea câmpurilor de două tabele (sau mai multe) în acelaşi câmp rezultat din interogare. Exemplu: Dechideţi o interogare în modul Design View: Faceţi clic pe opţiunea Mode SQL al icoanei View Se va obţine instrucţiunea SQL corespunzătoare interogării • Observaţie: Această operaţie este foarte interesantă în special pentru cei nefamiliarizaţi cu limbajul SQL: se poate crea interogarea în Access şi recupera instrucţiunea SQL astfel generată pentru a o include în codul VBA. . Access construieşte în paralel instrucţiunile SQL echivalente.interogările directe ce permit operarea directă cu tabele în server. 35 .

Avantajele utilizării instrucţiunii SQL în VBA sunt următoarele: Viteza de execuţie: o instrucţiune Select este mai rapidă decât parcurgerea secvenţială a unui tabel. <listă de câmpuri> * Alias1. Descrierea limbajului SQL INSTRUCŢIUNEA SELECT SELECT este cea mai folosită instrucţiune. Permite extragerea câmpurilor unui ansamblu de înregistrări ce corespund unor criterii.3.. Întreţinere mai uşoară: codul de instrucţiuni SQL este mai scurt. etc. etc. 5. interogările sunt compilate de SGBD care le optimizează performaţele. corespunzând interogării Selection din Access. Sunt omise toate înregistrările pentru care câmpurile selectate conţin date în dublu exemplar.] [GROUP BY. Numele tabelului sau tabelelor ce conţin datele care trebuie extrase.metoda Execute a obiectelor Command şi Connection. Listă de câmpuri selectate.. . Majoritatea acestor proprietăţi pot fi modificate de codul VBA.. . Limbajul SQL ŞI VBA Interogările SQL se integrează perfect în VBA şi pot fi utilizate pornind de la metodele diverselor obiecte: . Standardizare: limbajul SQL este standardul de interogare al bazelor de date relaţionale.proprietatea RowSource a unei liste derulante.] [ORDER BY] ALL Distinct Sunt luate în considerare toate înregistrările ce corespund criteriilor. Interogările SQL sunt de asemenea foarte des utilizate în formulare: . Se foloseşte pentru a crea o imbricare externă de 36 ..2. Sintaxă: FROM table 1 [LEFT|RIGHT|INNER JOIN table2 ON TABLE1.metoda CreateQueryDef a obiectelor DataBase şi Connection.. alias2 <listă de tabele> CLAUZA FROM Aceasta specifică tabelele sau interogările din care sunt extrase datele. deci mai uşor de citit. Performanţă mai bună: în modul client/server. Sintaxă: SELECT [ALL |DISTINCT <listă de câmpuri> FROM <listă de tabele> [WHERE .metoda OpenRecordset a obiectelor DataBase şi Connection. decât echivalentul său în VBA. .] [HAVING.5.câmp2 [LEFT|RIGHT| INNER] LEFT JOIN Aceşti operatori permit definirea tipului de imbricare între tabele.proprietatea RecordSource a unui formular sau raport.. separate de virgule Indică faptul că toate câmpurile tabelului/tabelelor specifcat(e) sunt selectate. Indică numele ce trebuie folosite drept antete de coloană în locul numelor coloanelor originale din tabel.camp1 <operator de comparare> TABLE2.

Rezultatul acesteia cuprinde toate înregistrările provenite din primul tabel (cel din stânga: <tabel1>) şi pe acelea pentru care există o valoare corespunzătoare în al doilea tabel (cel din dreapta: <tabel2>). SELECT Comenzi. INNER JOIN <operator de comparare> Exemple: Select Clients. <. Exemple: Această interogare returnează numărul comenzilor lansate de client. [Not] In. <.Cde_CodeCli În al doilea exemplu. SELECT Clienti. `Spania) CLAUZA GROUP BY Clauza GROUP BY corespunde „Totalului” interogărilor Access (numite Regrupări în versiunile anterioare). > =). Avg (medie). În principal.Cli_CodeCli = Comenzi.Cde_CodeCli GROUP BY Clienti. >. Rezultatul acesteia cuprinde toate înregistrările provenite din al doilea tabel (cel din dreapta: <tabel2>) şi pe acelea pentru care nu există valoare corespunzătoare în primul tabel (cel din stânga: <tabel1>). Or. Se foloseşte pentru a crea o imbricare ce nu cuprinde decât înregistrările în care datele câmpurilor sunt identice. sunt selectaţi toţi clienţii. Commandes. CLAUZA WHERE Permite filtrarea înregistrărilor după anumite criterii. < =.Cde_DateCde From Clients INNER JOIN Commandes ON Clients. .Cli_societate. Sum([Cde_Pret]*[Cde_Buc] AS TotalCde FROM Comenzi 37 .Cde_DateCde From Clients LEFT JOIN Commandes ON Clients.Cli_societate.Cli_CodeCli =Commandes.stânga.operatori de comparare: =.Cli_Societate. >. Toţi operatorii de comparare relaţională ce sunt utilizaţi (=. sunt selectaţi doar clienţii care au facut deja comenzi. Is [Not] Null. Count (calcul).Cde_CodeCli Listă de comenzi lansate de societate. `Italia. Count(Comenzi.operatori logici: And. Between. Not. Exemplu: SELECT * From Produse WHERE [Prod_Pret] = 500000 SELECT * From Produse WHERE [Prod_Pret] BETWEEN 100000 AND 200000 SELECT * FROM Clienti WHERE [Cli_plata] In (`France.Cde_NumCde.Cde_DateCde AS NbComenzi FROM Clienti LEFT JOIN Comenzi ON Clienti. Permite regruparea datelor într-unul sau mai multe câmpuri. Condiţiile clauzei WHERE se exprimă cu ajutorul operatorilor următori: . Select Clients. Commandes. RIGHT JOIN Se foloseşte pentru a crea o imbricare externă de dreapta.Cli_Societate Această interogare returnează totalul fiecărei comenzi. clauza este folosită pentru executarea funcţiilor de agregare SQL. ca şi Sum (sumă). > =. < =.Cli_CodeCli =Commandes. În primul exemplu.

Comenzi. ]] ASC DESC Ordine crescătoare. Odată ce regruparea este efectuată se afişează lista de câmpuri a clauzei GROUP BY şi sunt selectate doar înregistrările care respectă condiţia specificată în clauza HAVING.Cli_Soc. pentru înregistrările ce corespund criteriului dat (facultativ).Cde_DateCde) DESC Instrucţiunea UPDATE Corespunde unei interogări de actualizare care modifică valorile câmpurilor într-un tabel specificat.Cde_CodeCli GROUP BY Clienti.Cde_NumCde = [Detalii Comenzi]. .Cli_Pays = „RO” Această interogare modifică în tabelul Clienţi codul de ţară al înregistrărilor clienţilor al căror oraş este „Timişoara”.Cde_NumCde GROUP BY Comenzi.Cli_oras =”Timisoara INSTRUCŢIUNEA DELETE Corespunde unei interogări DELETE ce şterge înregistrările din tabelul menţionat în clauza FROM. UPDATE Clients SET Clients. SELECT Comenzi. înregistrările rezultă dintr-o interogare în funcţie de câmpul/câmpurile specificat(e)..Cde_DateCde HAVING (Sum(Cde_Pret*Cde_Buc)> 2 000 000) CLAUZA ORDER BY Această clauză determină sortarea (aranjarea în ordine crescătoare sau descrescătoare). Sintaxă: UPDATE table SET câmp1=valoarenouă1. după criteriile date (facultativ). toate înregistrările sunt actualizate.Cli_Soc ORDER BY Count (Comenzi. Exemple: Această interogare modifică codul ţării din toate înregistrările tabelului Clienţi. Sintaxă: DELETE FROM tabel [Where criteriu] Observaţie: • Dacă nu este specificată nici o caluză WHERE.Cde_NumCde.Cde_DateCde FROM Comenzi INNER JOIN [Detalii Comenzi] ON Comenzi.Cli_CodeCli =Comenzi. UPDATE Clients SET Clients. Count(Comenzi. Sintaxă: [ORDER BY camp1 [ASC|DESC][. Sum([Cde_Pret]*[Cde_Buc] AS TotalCde.Cde_DateCde) AS NbComenzi FROM Clienti LEFT JOIN Comenzi ON Clienti.[câmp2=valoarenouă2] . Exemplu: Această interogare extrage comenzile ale căror total este mai mare de 2 000 000. Ordine descrescătoare.Cde_NumCde GROUP BY Comenzi.Cde_NumCde. Exemplu: SELECT Clienti. camp2 [ASC|DESC]][... toate înregistrările sunt şterse. Commandes. [WHERE criteriu] Observaţie: • Dacă nu se specifică nici o clauză WHERE.Cde_NumCde CLAUZA HAVING Specifică înregistrările regrupate ce trebuie afişate într-o instrucţiune SELECT dotată cu o clauză GROUP BY.Cde_NumCde = [Detalii Comenzi].Cli_Pays = „RO” Where Clienti. 38 . .INNER JOIN [Detalii Comenzi] ON Comenzi.

Exemplu: Această interogare şterge comezile de dinainte de 1997..Cde_DateCde FROM Comenzi WHERE (( Comenzi. Modifică structura unui tabel.. câmp2 [‚ . de acelaşi tip şi în aceeaşi ordine. DELETE Comenzi. Crearea şi gestiunea utilizatorilor şi a grupurilor Crează unul sau mai mulţi utilizatori. Exemple: Adăugarea unei înregistrări în tabelul Clienţi INSERT INTO Clienti (Cli_CodCli. valoare2 [. CREATE USER ADD USER DROP USER CREATE GROUP Adaugă unul sau mai mulţi utilizatori existenţi utilizatori grupului de Şterge unul sau mai mulţi utilizatori..] ] FROM <lista de tabele> Observaţie: • Instrucţiunea SELECT trebuie să returneze atâtea valori în aceeaşi ordine şi de acelaşi tip către coloanele de valorificat (câmpul instrucţiunii INSERT).]câmp1 [. Interogare Add cu una sau mai multe înregistrări: INSERT INTO <TabelDestinatie>[( câmp1 [. Crearea şi gestiunea de tabele Crează un nou tabel. CREATE TABLE CREATE INDEX ALTER TABLE DROP TABLE DROP INDEX Crează un nou index pentru un tabel existent.]]) Observaţie: • Trebuie să existe tot atâtea valori câte coloane de valorificat.. `Timisoara~. . Şterge tabelul din baza de date...Cde_DateCde) < #1/1/1997#) INSTRUCŢIUNEA INSERT INTO Instrucţiunea SQL INSERT INTO corespunde unei interogări Add care adaugă înregistrări într-un tabel.. Cli_societate.* FROM Prospecte ALTE INSTRUCŢIUNI Interogare Crează o interogare imbricată. câmp2 [. câmp2 [‚ .] ] ) ] VALUES ( valoare1 [. Cli_plata) VALUES( `Mirton`. Sintaxa: Interogare Add de adăugare a unei singure înregistrări : INSERT INTO <TabelDestinatie>[( câmp1 [. Cli_oras.. `Editura Mirton`. `RO`) Adăugarea unei înregistrări din tabelul Prospecte în tabelul Clienţi. INSERT INTO Clienti SELECT Prospecte.] ] ) ] SELECT [<TabelSursa>. TRANSFORM UNION Crează o interogare ce fuzionează rezultatele a două sau mai multe tabele sau interogări. Crează una sau mai multe grupe de utilizatori.. 39 . Şterge indexul unui tabel.

fiind responsabil de proiectarea conceptuală şi logică 40 . Din punctual de vedere al sistemului de operare fişierul are un nume şi eventual o extensie de fişier. definire. rezultând costuri de actualizare mărite corespunzător. crearea. este o cheie candidat formată din mai multe atribute. grupând elementele sistemului real în entităţi şi asocieri (legături) între entităţi. Acest model. precum şi tranzacţiile de regăsire. neformalizat. evaluare. Baza de date este o resursă comună şi partajată. Din punct de vedere fizic fişierul este o colecţie finită de înregistrări fizice. în cadrul aplicaţiilor. un depozit de date unic definit o singură dată şi utilizat simultan de mai mulţi utilizatori. datele se definesc cu ajutorul unui nume (identificator). necesare descrierii datelor. este o structură care grupează date dintr-un anumit domeniu care au anumite caracteristici comune. reprezintă o proprietate a unei colecţii de date care se referă la faptul că unele componente ale colecţiei de date sunt memorate de mai multe ori pe suportul de memorare. o colecţie de înregistrări logice. Retrage privilegiile specifice ale unui utilizator sau a unui grup de utilizatori existent. reprezintă procesul de identificare. respectiv de reactualizare asociate. reprezintă un pachet de programe specializat pentru definirea. precum şi modul de stocare a datelor pe suportul fizic de memorare. este un ansamblu structurat de date legate structural între ele. Un tip de entitate poate avea mai multe chei candidat. o reprezentare abstractă a obiectelor şi a evenimentelor lumii reale şi a asocierilor dintre acestea.DROP GROUP GRANT REVOKE Şterge una sau mai multe grupe de utilizatori. Prin organizarea datelor se realizează gruparea datelor în colecţii de date omogene. Fişierul Redundanţa datelor Baza de date Modelul de date Modelul Entitate – Relaţie Cheie candidat Cheie primară Chei alternative Cheie compusă Relaţie (relationship) Sistemul de Gestiune al Bazei de Date (SGBD) Administratorul de date reprezintă un model de date conceptual de nivel înalt. Relaţia exprimă raportul existent între respectivele entităţi şi există doar dacă entităţile există. se stabilesc care sunt relaţiilor dintre date. este atributul sau mulţimea de atribute ale unei entităţi care identifică în mod unic apariţiile individuale ale unui tip de entitate. numite şi articole. o corespondenţă între două sau mai entităţi. Creşterea redundanţei are ca efect apariţia de erori frecvente datorate neconcordanţei informaţiilor memorate în fişiere aparţinând unor aplicaţii diferite. cu ajutorul căruia se reprezintă o organizaţie. Baza de date conţine nu numai date ci şi descrierea acestora. Din punctul de vedere al prelucrării de calculator. GLOSAR DE TERMENI Dată Organizarea datelor o informaţie codificată şi stocată pe un suport de memorare. gestionează resursele de date. o comunicare. dintre elementele colecţiilor şi dintre colecţii. iar din punctul de vedere al semnificaţiei. este o colecţie integrată de concepte. permite o reprezentare a unui sistem real. este o asociere. structurare şi memorare a informaţiilor. Oferă privilegii specifice unui utilizator sau a unui grup de utilizatori existent. rămase nealese. întreţinerea şi accesul controlat la baza de date. a atributelor pe care le are şi de o valoare. care descrie structura bazei de date. a relaţiilor dintre date şi a constrângerilor asupra datelor dintr-o organizaţie. din mulţimea de chei candidat se alege un singură care va fi numită cheie primară. se numesc celelalte chei candidat. în cadrul unui sistem informaţional.

este un limbaj specific pentru fiecare SGBD fiind utilizat pentru a specifica schema bazei de date. organizate sub forma unei matrice în care coloane reprezintă atribute (câmpuri). implementarea şi realizarea fizică a bazei de date. sunt obiecte virtuale de tip tabelă. a constrângerilor asupra datelor ce vor fi stocate în baza de date. sunt obiecte folosite pentru a consulta sau actualiza datele dintr-un tabel sau o structură de interogare. care nu au corespondent fizic. iar fiecare coloană din tabelul Access reprezintă un câmp diferit. de întreţinerea întregului sistem. de realizarea şi întreţinerea standardelor. şi anume declaraţiile de variabile şi constante. este un limbaj care asigură un set de procedee ce permit operaţiile de bază pentru manipularea datelor din baza de date. de securitatea şi controlul integrităţii. Pentru a rezolva o sarcină mai complexă se poate construi un macro (format dintr-o mulţime de acţiuni) sau o procedură (formată dintr-o succesiune de instrucţiuni în Visual Basic). este un limbaj specific care include comenzi pentru asigurarea confidenţialităţii şi integrităţii datelor. reprezintă obiecte specifice ACCESS care permit afişarea într-un format accesibil care permite transmiterea rapidă a datelor prin Internet sau Intranet. persoană. loc sau obiect este o informaţie individuală din componenţa unei înregistrări. Este un limbaj descriptiv care permite administratorului bazei de date. respectiv utilizatorului final sa descrie şi să definească entităţile din baza de date precum şi relaţiile existente între entităţi. constă în codul program predefinit ce se raportează la un tip de obiect şi care se Evenimentul Metoda 41 . Limbajul pentru definirea datelor (LDD – Data Description Language) Limbajul pentru manipularea datelor (LMD – Data Manipulation Language) Limbajul pentru controlul datelor (LCD – Data Control Language) Tabelele Înregistrarea Câmpul Interogările Formularele Rapoartele Paginile de prezentare Macro-urile sunt obiecte folosite pentru a sintetiza datele stocate într-o tabela reală sau virtuală şi a oferi un rezultat tipărit al informaţiilor din baza de date – un raport ACCES. fiind definite cu ajutorul tabelelor definite deja în baza de date. realizările entităţii (înregistrări). a relaţiilor dintre entităţi. de la cea mai simplă listă a unui tabel până la rapoartele cele mai complexe ce conţin regrupări de înregistrări şi calcule. Modulele conţin o parte a codului VBA al aplicaţiei. adică să definească o schemă sau să o modifice. adică vizualizări. conţin datele propriu-zise corespunzătoare entităţilor din baza de date. este persoana sau grupul de persoane responsabil de proiectarea. VBA reprezintă un mediu de programare orientat obiect. Proiectarea conceptuală şi logică presupune identificarea entităţilor. pentru salvarea informaţiei cu scopul menţinerii integrităţii bazei de date şi chiar pentru rezolvarea problemelor de acces concurenţial la date. iar liniile apariţiile. în care fiecare câmp conţine o valoare concretă dintr-un domeniu de valori şi conţine informaţii care identifică o anumită realizare concretă a entităţii. de planificarea bazei de date. reprezintă acţiunea utilizatorului sau a sistemului asupra unui obiect ceea ce declanşează execuţia codului program corespunzător. Operaţiile executate în cadrul bazei de date presupun existenţa unui limbaj specializat în care comenzile se exprimă prin fraze ce descriu acţiuni asupra bazei de date. reprezintă o modalitate optimă de acces la date.(Data Administrator) Administratorul bazei de date (Database Administrator) Proiectanţii bazei de date a bazei de date. a politicilor şi a procedurilor bazei de date. funcţiile şi procedurile globale ale întregii aplicaţii. sunt persoanele implicate în proiectarea logică şi cea fizică a bazei de date. care permit automatizarea mai multor sarcini folosind un limbaj specific. este o linie dintr-un tabel.

constă dintr-un set de instrucţiuni (un modul program) care în urma execuţiei returnează o valoare de un anumit tip.olb. Odată ce regruparea este efectuată se afişează lista de câmpuri a clauzei GROUP BY şi sunt selectate doar înregistrările care respectă condiţia specificată în clauza HAVING. Avg (medie). una denumită Clineţi sau Destinaţie.Procedura Funcţia Visual Basic Application (VBA) Access IDE (Integrated Development Environment) Limbajul SQL (Structured Query Language) Instrucţiunea SELECT execută în momentul apariţiei unui eveniment. Se poate folosi Exploratorul de obiecte pentru a examina conţinutul unei biblioteci de obiecte. specifică înregistrările regrupate ce trebuie afişate într-o instrucţiune SELECT dotată cu o clauză GROUP BY. este un protocol de schimb dinamic de date între două aplicaţii Windows. 42 . un fişier prevăzut de obicei cu o extensie . corespunde unei interogări ADD care adaugă înregistrări într-un tabel. corespunzând interogării Selection din Access. modifica şi testa codul VBA. cealaltă denumită Server sau Sursă. după criteriile date (facultativ). înregistrările rezultă dintr-o interogare în funcţie de câmpul/câmpurile specificat(e). este mediul în care se poate crea. dezvoltat de Microsoft folosind limbajul Visual BASIC adaptat la cerinţele specifice ale sistemelor de gestiune de baze de date. este un limbaj de interogări şi gestionare a bazelor de date relaţionale. corespunde unei interogări de actualizare care modifică valorile câmpurilor într-un tabel specificat. direct din Access sau din VBA Access. este un limbaj de programare orientat obiect. furnizând informaţii ce permit maipularea obiectelor puse la dispoziţia utilizatorului de un server. Clauza ORDER BY (SELECT) Instrucţiunea UPDATE Instrucţiunea DELETE Instrucţiunea INSERT INTO OLE (Object Linking and Embedding) sau OLE Automation Bibliotecă de obiecte DDE (Dynamic Data Exchange) corespunde unei interogări DELETE ce şterge înregistrările din tabelul menţionat în clauza FROM. este tehnologia care permite manipularea obiectelor unei alte aplicaţii. Legătura este întreruptă dacă una dintre cele două aplicaţii este închisă. permite filtrarea înregistrărilor după anumite criterii. este folosită pentru executarea funcţiilor de agregare SQL. ca şi Sum (sumă). este alcătuită dintr-un set de instrucţiuni (un modul program) ce nu returnează nici o valoare ci execută o anumită acţiune. FROM specifică tabelele sau interogările din care sunt extrase datele. determină sortarea (aranjarea în ordine crescătoare sau descrescătoare). pentru înregistrările ce corespund criteriului dat (facultativ). Permite extragerea câmpurilor unui ansamblu de înregistrări ce corespund unor criterii. Count (calcul). Clauza (SELECT) Clauza WHERE (SELECT) Clauza GROUP BY (SELECT) Clauza HAVING (SELECT) este cea mai folosită instrucţiune.

2007-2008.Năstase. Tora. 1999.Lupulescu. Mirton. A. „FoxPro de la iniţiere la performanţă”.a. Tora. Timişoara. ***. ed.Bucureşti. 11. Infomega. 2000. 2003 14. Timişoara. R. T.Berbec. „Baze de date în mediul Acces”.Popovici. 16. Ed. J.Biriescu.Mircea. Ionescu. F. 1994. All.Connolly. Bucureşti. „Baze de date – proiectare. M. „Baze de date – fundamente teoretice şi practice”. P. „Baze de date în sisteme informatice economice”. 2. 2001. „Baze de date. „Baze de date în Visual FoxPro”. 20. Bucureşti.0 – ghidul programatorului”. Bucureşti. 12. Timişoara.Muntean. All. Ed. Timişoara. Ed.Hurbean. 2002.Beg. „Note de curs – Baze de date”. S. Tehnică. G. „Baze de date – Microsoft Access 2000”. Teora.Năstase ş. Ed. Acces şi VBA”. Ed. 43 . Ed. D. 2004.Margea. D. Florescu. Timişoara. C. C. Ed. „Programare în ACCESS 97 VBA. „Modelarea bazelor de date”. M. 18. 2001. gesionare”. Timişoara. „Microsoft Visual Basic 6. „Baze de date relaţionale şi aplicaţii”. 2004. Bucureşti. Teora. 2003. 2006. Timişoara.J. 4.Velicanu. 222 15. Tehnică. 2006. „Baze de date în mediul Acces”. P. Ed.Petrov.Universităţii de Vest. Bucureşti. Mirton.V.Muntean. Mirton. I. Bucureşti. Ed. Mirton. C. Ed. M. Bucureşti. A. F. Teora. C. D.Hernandez. 17.Miloşescu. Teorie şi practică. 1999. „Dezvoltarea aplicaţiilor cu Visual FoxPro”.Muntean. „Baze de date pentru începători”. „Access 2002. M.Stepan. Bucureşti. M.Smith. R.Reisz. M. G. All. Ed. pentru începători”. de Vest. Bucureşti. 2002. 2001. 10. V. M. Tehnici de programare în VBA”. I. 2003. Ed. Editura Mirton.Giulvezan.BIBLIOGRAFIE 1. Mirton. 21. 2001. „Baze de date. M. Ed.Mogoşanu.Sussman. 3. 2006. G. Ed.Despi. 13. Ed. 8.Dănăiaţă. Timişoara. 7.Muntean. L.Mircea. „SQL –visual quickstart guide”.Giulvezan. „Teoria generală a bazelor de date”. Bucureşti. Ed. Ed. „Proiectarea bazelor de date”.Fehily. implementare. 9. 1999. Bucureşti. A.Popescu. Ed. 6. I. Concepte teoretice şi abordare practică în Microsoft Access”. C.Strachan. 5. Teora. 19.Lungu. 2002.Petersen.

Sign up to vote on this title
UsefulNot useful