Documente Academic
Documente Profesional
Documente Cultură
BD I - Curs NR 1
BD I - Curs NR 1
1:
Modelul conceptual; modelul logic si modelul fizic al BD. - Studiu de caz Curs nr. 2 17.10.2011 Baze de date relationale si S.G.B.D.R. Relatii (tabele). Tipuri de chei si indentificarea inregistrarilor prin chei Tipuri de legaturi intre entitati. Diagrama entitate-asociere Tipuri de restrictii si integritatea restrictiilor Dependente si determinari in multimea atributelor Curs nr. 3 24.10.2011 SGDB-UL FOXPRO. Modurile de lucru cu FOXPRO. Interfata produsului Visual FoxPro (Modul de lucru asistat): Creare, vizualizare baze de date (tabele). Actualizare inregistrari, interogare, listare baza de date (tabele). Listarea si actualizarea structurii unei baze de date . Comenzi: CREATE; CREATE TABLE; MOFIFY STRUCTURE; USE; SELECT; CLOSE; SET FIELDS; SET FILTER TO Curs nr. 4. 31.10.2011 Comenzi si functii FOXPRO. Conventii de metalimbaj Comenzi pentru crearea (definirea), modificarea si afisarea structurii bazei de date Comenzi pentru incarcarea, actualizarea (aduagarea, modificarea, stergerea de inregistrari) si gestionarea bazei de date. Comenzi pentru sortarea si indexarea bazei de date Comenzi pentru lucru cu indexi. Comenzi: LIST/DISPLAY; LOCATE; GOTO; SORT; COPY; APPEND; APPEND FROM; DELETE; RECALL; PACK; REPLACE; BROWSE. Curs nr. 5. 07.11.2011 Comenzi pentru localizarea inregistrarilor Comenzi pentru actualizarea inregistrarilor din fisiere Indexarea si cautarea rapida. Relationarea tabelelor: Transferul de date intre tabele FoxPro si alte structuri (import/export din/catre [tablouri de memorie] /[ alte tipuri de fisiere]: Comenzile: INDEX; SET ORDER; DELETE TAG; FIND; SEEK; SET RELATION; SET SKIP; APPEND FROM ARRAY; COPY TO ARRAY; SCATTER; GATHER; APPEND FROM TYPE; COPY TO TYPE Aplicatii
Curs nr. 6. 14.11.2011 Comenzi pt. introducerea si afisarea datelor de la terminal Comenzi pt. calcule. Comenzi pt. lucru cu variabile de memorie si tablouri Comenzi pt. informarea utilizatorului. Expresii si functii FOXPRO Prelucrari statistice si financiare: Operatii cu baze de date in Visual FoxPro; Descrierea operatiilor cu baze de date prin comenzi (CREATE; OPEN; DELETE DATABASE;) Gestiunea interactive a B.D. Database Designer; Comenzile: APPEND; COPY; MODIFY MEMO; APPEND GENERAL; @ SAY; @GET; COUNT; SUM; AVERAGE; CALCULATE; ` TOTAL. Aplicatii Curs nr. 7 21.11.2011 Test nr. 1: Teste grila (seminar) + Test pt. utilizare comenzi si functii FOXPRO NIVEL ANALISTI PROGRAMATORI DE APLICATII INFORMATICE CU BAZE DE DATE Curs nr. 8. 28.11.2011 Anomalii intalnite in proiectarea relatiilor Normalizarea Ameliorarea succesiva a schemei conceptuale a BD; Forme normale: FN1; FN2; FN3 Etape de realizarea aplicatiilor cu baze de date ALEGERE TEMA PENTRU PROIECTUL INDIVIDUAL Curs nr.9 5.12.2011 Limbajul de programare FOXPRO Mediul de programare in limbajul FOXPRO Structuri alternative si structuri repetitive Structura unui program scris in FOXPRO Comenzile: IFENDIF; DO CASE; DO WHILE; FOR; SCAN; LOOP; EXIT Elemente ale limbajului SQL Curs nr. 10 12.12.2011 Subprograme in FOXPRO Lucru cu meniuri orizontale si verticale Comenzi pentru definirea si gestionarea meniurilor Lucru cu ferestre. Aplicatii
Comenzile: PROCEDURE; DO; PARAMETERS; FUNCTION; PARAMETERS; RETURN; SET UDFPARMS; Programe pentru modificarea inregistrarilor . Regasirea inregistrarilor . Modificarea inregistrarilor Programe pentru stergerea inregistrarilor . Regasire inregistrari . Stergere logica . Stergere fizica Programe pentru vizualizarea inregistrarilor Programe pentru realizarea rapoartelor si redirectionarea iesirii spre un suport extern Elemente ale limbajului SQL Curs nr. 11 19.12.2011 Test nr. 2. Dezvoltarea de aplicatii si scriere de programe in limbajul FOXPRO Curs nr. 12 9.01.2012 Modularizarea programelor in FOXPRO Definirea procedurilor Comunicarea intre proceduri Parametrizarea procedurilor Modularizarea programelor FOXPRO Visual FOXPRO Elemente de programare orientate spre obiecte (clase, obiecte, evenimente si metode). Comenzile: DEFINE CLASS,; CREATEOBJECT; RELEASE READ EVENTS. Proiectarea formularelor (Generatorul Form Designer). Generatorul de tabele (Table Designer & Table Wizard) Generatorul de interogari (Query Designer & Query Wizard Curs nr. 13 16.01.2012 Comunicarea aplicatiei Visual FoxPro cu exteriorul: Proiectarea rapida a vederilor cu Remote View Wizard; Proiectarea paginilor web pentru vizualizarea datelor pe internet; Proiectarea paginilor de cautare pe internet; Proiectare de documente si transmiterea lor prin e-mail Dezvoltarea de aplicatii in FOXPRO . Prezentarea de aplicatii
Curs nr. 14 16.01.2012 Generatorul de meniuri (Menu Bilder). Comenzile: CREATE/MODIFY MENU;DO Generatorul de rapoarte ( Report & Label Designer; Report & Label Wizard). Comenzile : CREATE REPORT; REPORT FROM. Generatorul de aplicatii (Project MANAGER)_ Recapitulare pentru examen
Observatii: 1.Proiectul individual va contine o aplicatie informatica care sa gestioneze o baza de date formata din cel putin doua tabele corelate si care sa furnizeze cel putin patru rapoarte. Produsul software va gestiona prin meniuri baza de date si editarea rapoartelor. 2.Proiectul va fi elaborat pe parcursul semestrului si prezentat in ultimele 2 ore de laborator din sem. II. Prin exceptie, proiectul poate fi prezentat si in timpul examenului dar cu depunctare 3.Pe parcursul sem. II vor fi date doua probe de verificare. 4.Studentii care au media aritmetica formata din cele doua teste, proiect si activitatea de la seminar peste 7 si o prezenta de peste 75% poate sa nu se mai prezinte la examen
Bibliografie: 1. Baze de date . Sistemul FoxPro. Autori: Prof. dr. Virgil Chichernea, Lect. drd. Gabriel Garais Editura PROUNIVERSITARIA, 2009
CUPRINS CADRU AL PROIECTULUI: 1. Tema proiectului 2. Obiective 3. Definirea si proiectarea logica si fizica a iesirilor (machete ale rapoartelor de iesire: ex. L1: Listare tabela 1; L2: listare tabela 2; L3: Listare din ambele tabele.) 4. Definirea si proiectarea logica si fizica a intrarilor (macheta ecranelor de preluare date de intrare) 5. Definirea si proiectarea logica si fizica a bazei de date . Proiectarea conceptuala a bazei de date (DEA) . Structura tabelelor bazei de date 6. Definirea si proiectarea meniurilor aplicatiei 7. Schema bloc a aplicatiei 8. Anexe: - Listarea programului sursa - Situatii de iesire cu date de test
Curs nr. 1:
Obiectivele unui invatamant academic modern, care este prin excelenta un invatamant informatizat, pot fi sintetizate astfel:
-
Sa te invete sa inveti Sa te invete sa faci Sa te invete sa te integrezi Sa te invete sa ai personalitate Asigurarea acestor obiective complexe asigura premisele pregatirii tinerei generatii pentru economia de piata globala si ii da oricarui absolvent posibilitatea de a avea un raspuns clar la intrebarea Ce stii sa faci?
SA FOCALIZAM ACUM ATENTIA PE OBIECTIVELE CURSULUI BAZE DE DATE : Peste 75% din Sistemele informatice operationale in lume sunt sisteme informatice cu baze de date. I.Informaticianul trebuie sa apeleze in permenenta la cei 5 prieteni ai lui : 1. Ce trebuie facut ? 2. De ce trebuie facut ? 3. Cum trebuie facut ? 4. Cine, unde, cand ? 5. Merita ?
II. Informaticianul trebuie in permanenta sa apeleze la refolosibil, pentru a-si crea timpul necesar insusirii noilor tehnologii !!!
III. Orice aplicatie/sistem cu BD incepe cu faza de proiectare care se finalizeaza prin proiectul tehnic in care obligatoriu trebuie sa apara pprincipalele rapoarte de iesire semnate de catre beneficiar.
CURS NR. 1 CUPRINS:
Exemple: Date: Atribute Valori meserie strungar meserie lctu meserie magazioner meserie macaragiu ----------------------------------------------------------data naterii 12.02.1935 data naterii 25.12.1937 data naterii 05.07.1934 data naterii 18.02.1929 Informatii: a) b) c) categoria socio-profesionala: muncitori; persoane n vrst.
n exploatarea bazei de date fiecare utilizator are propria viziune asupra structurrii datelor relevante pentru el. De fapt fiecare utilizator va avea acces la o baz de date particular, n realitate fictiv, iar descrierea acestei baze de date particulare se numete subschema bazei de date. Constituirea SCHEMEI BD se realizeaz n patru etape dup cum urmeaz: Etapa 1: Identificarea mulimilor de entiti din cadrul sistemului Etapa 2: Identificarea asocierilor (legturilor) care exist ntre mulimile de entiti Etapa 3: Determinarea condiiilor care se impun asocierilor identificate Etapa 4: Determinarea caracteristicilor (atributelor) entitilor i asocierilor care au rezultat n urma etapelor precedente. D6: Sistemul de Gestiune a Bazelor de date (SGBD) este format dintr-un Sistem de programe care permite construirea unor baze de date, ncrcarea datelor i dezvoltarea de aplicaii privind valorificarea datelor memorate n bazele de date. SGBD-ul este n fond o interfa ntre utilizatori i sistemul de oparare. - Orice SGBD conine un limbaj de descriere a datelor (LDD), care permite descrierea structurii unei baze de date i un limbaj de cereri (LC) sau limbaj de prelucrare a datelor (LPD)ce permite efectuarea de operaii asupra datelor aflate n baza de date cum ar fi: crearea; actualizarea; interogarea;listarea si intretinerea bazei de date. S.G.B.D. este un sistem de programe care asigur independena programelor aplicative fa de modul de structurare a datelor. Conform metodologii ANSI fiecrei baze de date i se asociaz trei nivele funcionale i anume: - nivelul conceptual care este depozitarul semantic al bazei de date. Acest nivel reprezint o abstracie a sistemului modelat i servete ca referire global pentru viziunile particulare ale utilizatorilor (schema bazei de date); - nivelul extern (logic) cuprinde viziunile specifice definite pentru manipularea (prelucrarea) datelor. Necesitile de date ale utilizatorilor sunt exprimate la acest nivel. O viziune extern a bazei de date reprezint, ntr-o manier ct mai aproape de realitate, un tip de utilizator al bazei de date (subschemele bazei de date); - nivelul intern (fizic), corespunde reprezentrii datelor pe suporturile de date. Acest nivel contribuie la eficacitatea transpunerii i implementrii sistemului conceptual.
informaional face legtura ntre sistemul condus i sistemul de conducere fiind subordonat acestora. D9: Sistemul informatic este un ansamblu structurat de elemente intercorelate funcional pentru automatizarea procesului de obinere a informaiilor i fundamentarea deciziilor. Sistemul informatic este inclus n sistemul informaional i conine procesul de culegere, verificare, transmitere, stocare i prelucrare automat a datelor. Sistemul informatic se compune din baza de date, echipamente de calcul i transmisie de date, software-ul i utilizatorii.
SISTEM INFORMAIONAL SISTEM INFORMATIC Subsistem BANCA DE DATE Baza Echip. de date SGBD de calcul Proceduri Schema nr. 1 Relaiile dintre sistemul informaional, sistemul informatic i banca de date
Categorii de personal implicate in realizarea si exploatarea sistemelor informatice cu BD: Administratorul bazei de date, Programatorii de aplicaii, Utilizatorii
finali - Administratorul bazei de date care este gestionarul responsabil cu buna funcionare a SGBD i cu meninerea n permanen n stare de funcionare a bazei de date. Administratorul bazei de date ( o persoan sau un grup) are urmtoarele responsabiliti: - proiectarea bazei de date (definirea schemei i a subschemelor); - asigurarea securitii datelor; - ameliorarea performanelor bazei de date; - asigurarea integritii i extinderii bazei de date. - Programatorii de aplicaii - specialitii care realizeaz programe in LC, acestea fiind apoi compilate i memorate n fisiere ce pot fi lansate n execuie de ctre utilizatori prin apelarea numelui asociat de utilizator i efectueaz unele prelucrri specifice de date; - Utilizatorii finali persoane care exploateaz baza de date si ruleaza inclusiv programele elaborate de programatorii de aplicaii. Acesti utilizatori pot s obin informaiile memorate n baza de date fr s aib cunotine de programare. Ei obin informaiile dorite prin comenzi cunoscute i eventual rspunznd la diferite opiuni pe care le indic sistemul la un moment dat.
RECAPITUALARE: BAZE DE DATE: - ORGANIZAREA DATELOR - MANAGEMENTUL BAZEI DE DATE - ADMINISTRAREA BAZEI DE DATE DEFINITII: D1: BAZE DE DATE este o colectie de tabele corelate, ce poate fi exploatata in acelasi timp de catre mai multi utilizatori, fiecare utilizator avand viziuni diferite asupra datelor. D2: O baz de date grupeaz un ansamblu de fiiere corelate. Structura acestui ansamblu de date se realizeaz prin SCHEMA BAZEI DE DATE. SUBSCHEMA BAZEI DE DATE B.D. particulara (viziunea) pe care o vede si lucreaza cu ea un utilizator.
B.D. are trei nivele functionale: nivel conceptual; nivel extern (relational); nivel intern (fizic)
D3: SGBD-ul este un sistem de programe de gestiune i de aplicaii care asigur descrierea structurii bazei de date, manipularea datelor (creare, actualizare, interogare, listare i ntreinere), controlul i autorizarea accesului la baza de date i asigurarea integritii i securitii bazei de date.
SISTEM INFORMAIONAL SISTEM INFORMATIC Subsistem BANCA DE DATE Echip. Baza de de date SGBD Proceduri calcul Figura nr. 2 Relaiile dintre sistemul informaional, sistemul informatic i banca de date .
n figura 1 sunt reprezentate grafic relaiile stabilite ntre aceste concepte. Deoarece datele dintr-o unitate economico-social sunt ntr-o permanent schimbare, atunci i asupra datelor memorate n baza de date asociat sistemului informatic al unitii economico-sociale se efectueaz operaii de creare, modificare, adugare. tergere, prelucrare (interogare, listare, transfer) etc. OPERATII ASUPRA BD: -CREARE -ACTUALIZARE (Modificare valori; adaugare inregistrari; stergere inregistrari) - INTEROGARE - LISTARE - INTRETINERE Utilizatorii bazei de date se mpart n urmtoarele categorii: Administratorul bazei de date - Programatorii de aplicaii Utilizatorii finali
II. MODELE CONCEPTUALE DE ORGANIZAREA DATELOR IN BAZE DE DATE: Model ierarhic; Model Retea; Model Relational Modelul Relational: TABELA = RELATIE ATRIBUT = Coloana a tabelei; TUPLU = Inregistrare (linie a tabelei) DOMENIU = Multimea de valori admisibile pentru un atribut; STRUCTURA RELATIEI = Multimea de atribute care compun structura relatiei; SCHEMA RELATIEI = Structura relatiei + restrictii privind valorile admise; CHEIE PRIMARA= Atribut sau grup de atribute care pot identifica un tuplu in mod unic; Cheie simpla (FORMATA DINTR-UN SINGUR ATRIBUT) CHEIE COMPUSA (formata din mai multe atribute) CHEIE CANDIDATA = Atribut sau grup de atribute care pot identifica un tuplu in mod unic; Din multimea cheilor candidate se alege cheia primara CHEIE EXTERNA = Cheia care asigura legatura intre tabele (putem avea legaturi de tip 1: 1; 1: m; n:m). Se realizaeaza de regual prin campuri comune intre doua tabele.
Exemplu: CLIENT (CodClient, Denumire, Adresa,...) FACTURI (NrFact, DataFact, Emitent, CodClient, Cantitate, PU, Valoare, DataScadenta,...)
PRODUS(CodProdus, DenProd, Um, Pret,...) FACTURISCADENTE(NrFact, CodClient, Data, CodProdus,Cant, Pu, Valoare,....) Chei externe: -CodClient pentru legatura dintre tabelele CLIENT si FACTURI; _ CoProdus pentru legatura dintre tabele PRODUS si FACTURISCADENTE
Figura nr. 3 Structura datelor din subsistemul aprovizionare Pentru exemplificarea conceptelor de entitate, obiect i dat precum i a legaturilor dintre ele, s mai analizm i activitatea de gestiune date din cadrul secretariatului unei faculti. n cadrul acestei
aplicaii putem identifica urmtoarele entiti: PROFESORI, MATERII, STUDENTI, SALI_CLASA etc. Reprezentarea grafic a acestor concepte i a legturilor dintre acestea este reprezentat n figura 5. ns numai aceste noiuni nu sunt suficiente pentru modelarea organizrii datelor n baza de date, deoarece lipsesc legturile semantice ntre entiti i n interiorul acestora. D13 Pentru descrierea unei activiti pentru care s-au cules deja datele se folosete aa numitul MODEL ENTITATE-LEGTUR (MEL). n cadrul modelului entitate-legtur sunt puse n eviden componentele importante ale sistemului (entitile), proprietile acestor componente (atributele) i legturile dintre entiti (asocierile).
Figura nr. 4 Exemplificri ale conceptelor: entiti, obiecte, date. Principalele tipuri de asocieri ntre entiti sunt reprezentate n figura 6. Asociere 1:1 Asociere 1:m A A B B
A A A
B B C
D16: Modelul relaional permite o descriere simpl a bazei de date sub forma unor tabele n care actualizarea datelor n tabele se face fr anomalii de stocare. n modelul relaional o colecie de atribute (cmpuri) formeaz o relaie (numit i tabel). O relaie poate fi reprezentat printr-o tabel, n care fiecare rnd reprezint un tuplu (nregistrare) distinct, iar fiecare coloan reprezint un cmp al nregistrrii, cmp ce ia valori ntr-un anumit domeniu. Cu ajutorul modelului relaional structura conceptual a bazei de date poate fi reprezentat sub forma unei mulimi de tabele, care se asociaz ntre ele prin intermediul unor chei. Modelul conceptual relaional prezint o serie de avantaje: - este uor accesibil pentru utilizatorii mai puin iniiai n informatic, prin faptul c baza de date este reprezentat ca o colecie de tabele; - este un model omogen de reprezentare a legturilor dintre coleciile de date (prin relaii); - asigur independena programelor fa de structura datelor; - permite proiectarea unei structuri conceptuale optime a datelor, cu ajutorul operaiei de normalizare; - admite satisfacerea cerinelor ntmpltoare ale utilizatorilor, prin intermediul unor limbaje bazate pe algebra relaiilor sau a unor limbaje neprocedurale bazate pe teoria predicatelor. Din aceasta categorie a SGBD relaionale menionm: - dBASE, produs elaborat de firma Ashton Tate (n prezent dezvoltat de firma Borland), implementat pe microcalculatoare compatibile IBM sub sistemul de operare DOS i UNIX ; - FoxPro, implementat pe microcalculatoare PC compatibile IBM sub sistemul de operare DOS, WINDOWS, MAC i UNIX; - ORACLE, operaional pe IBM-PC sub sistemele DOS, WINDOWS i UNIX precum i pe calculatoare de mare capacitate; - SQLServer, produs de firma Microsoft; - INGRES, conceput de Universitatea Berkeley, instalat pe minicalculatoare sub sistemul de operare UNIX i lucreaz n regim de multiutilizator; - INFORMIX, operaional sub sistemul de operare SOLARIS. - DB2, operaional pe microcalculatoare IBM, etc.
PROCESUL DE DEZVOLTARE A ARHITECTURII UNEI BAZE DE DATE Intelegerea tranzactiilor, rapoartelor, ecranelor,utilizarii BD Model date Schema bazei de date Dezvoltarea Schemei conceptuale a BD Dezvoltarea Subschemelor si specificatiilor logice ale BD
Noile cerinte
Performante asteptate