Popularea tabelelor. Testarea restrictiilor de integritate referentiala
Dupa ce s-au creat tabelele se pot introduce date in acestea. Introducerea datelor, se poate realiza cu ajutorul unor formulare create pentru aceasta tabela, sau pur si simplu prin selectarea tabelei dorite si apasarea butonului Open (Deschidere) existent īn partea de sus a ferestrei.
Pe ecranul monitorului, va aparea o fereastra ce permite introducerea datelor.
Īn aceasta fereastra se vor introduce datele corespunzatoare. Īn partea de jos a ferestrei se afla un mic meniu ce permite parcurgerea īnregistrarilor tabelei ş 10310e418k ;i care anunta cāte īnregistrari contine tabela respectiva.
Daca se doreste stergerea sau modificarea anumitor date dintr-o tabela, va fi necesara deschiderea tabelei pe care se doreste sa se lucreze si localizarea īnregistrarii pentru cāmpul de modificat. Cānd s-a īncheiat modificarea sau stergerea anumitor informatii, pentru salvarea acestora, se procedeaza la īnchiderea tabelei. MS Access va salva automat ceea ce s-a modificat. Pentru o mai mare siguranta, īnsa, se poate apasa butonul Save (Salvare), existent pe bara de instrumente a aplicatiei, sau optiunea cu acelasi nume din meniul File.
Daca se doreste stergerea anumitor īnregistrari dintr-o tabela, va trebui sa se realizeze īn prealabil o pozitionare pe īnregistrarea dorita si apoi sa se aleaga optiunea Delete Record (stergere īnregistrare) din meniul contextual declansat pe coloana cea mai din stānga a tabelei .
Se vor alege urmatoarele date pentru popularea tabelelor (īn ordinea data si fara caracterele virgula, care despart valori ale diferitelor cāmpuri - asanumite atribute sau prin analogie cu EXCEL: coloane):
JUDEŢE:
BC, Bacau, Moldova
IS, Iasi, Moldova
CJ, Cluj, Transilvania
ADRESAPOSTALA:
400609, Cluj Napoca, CJ
607450, Podu Turcului, BC
700504, Iasi, IS
700505, Iasi, IS
700506, Iasi, IS
ADRESAFIZICA:
adrf1, Bulevard Carol I nr.15, 700506
adrf2, StradA Ibraileanu Garabet nr. 3, 700506
adrf3, Teiului, 607450
adrf4, Bulevard Carol I nr.42, 700504
adrf5, Alea Micle Veronica, 700505
adrf6, Alexandru Ioan nr.7, 400609
STUDENŢI:
ELZ04001, Barbu I Sorin, 1830210032456, Trunchi comun -Zi, 1, 1, adrf1
ELZ04010, Barbu I Vasile, 1851211042398, Trunchi comun -Zi, 1, 1, adrf1
ELZ04013, Barbosi V Ionela, 2851011794981, Trunchi comun -Zi, 1, 1, adrf6
ELZ04020, Ababei Y Minodora, 2801204371242, Contabilitate, 1, 2, adrf2
ELZ01012, Vasilescu D Ion, 1810210394563, Informatica Economica-Zi, 3, 1, adrf3
ELZ01014, Georgescu R Dudu Ion, 1811021039426, Informatica Economica - Zi, 3, 1, adrf4
ELZ01123, lonescu V Vasile, 2830312394536, Informatica Economica- Zi, 3,1, adrf5
DISCIPLINE:
AE1101, Microeconomia, 7, 42, 28
AE1201, Macroeconomia, 7,42, 28
AI1101, Bazele informaticii economice, 7, 42, 28
, Medii AI1201 de programare, 6, 28, 28
AI3508, Baze de date I, 7, 28, 28
AI3614, Baze de date II, 7 ,28,28
EXAMENE:
ELZ04001, AE1101,
ELZ04010, AE1101, 01/28/2005, 7
ELZ04020, AE1101,
ELZ04001, AI1101,
ELZ04010, AI1101,
ELZ01012, AI3508, 01/24/2005, 7
ELZ01123, AI3508, 01/24/2005, 4
ELZ04001, AE1101, 02/11/2005, 4
ELZ04010, AE1101,
ELZ04020, AE1101,
ELZ01123, AI3508, 02/23/2005, 7
ELZ04001, AE1201, 06/02/2005, 8
ELZ04020, AE1201, 06/02/2005, 3
ELZ04010, AE1201, 06/02/2005, 7
ELZ04001, AI1201, 06/12/2005, 9
ELZ04020, AI1201, 06/12/2005, 4
ELZ04010, AI1201, 06/12/2005, 6
ELZ04001, AE1101, 07/04/2005, 9
ELZ04020, AE1201, 07/10/2005, 5
Dupa realizarea popularii cu date a tabelelor se vor testa restrictiile de integritate referentiala astfel:
se va testa īn tabela parinte Studenti restrictia la modificare sau altfel spus se va proceda la modificarea valorii matricolului ELZ01012 īn ELZ010120; rezultatul va īnsemna esec datorita restrictionarii modificarii īn tabela parinte Studenti (la definirea relatiei dintre tabelele Studenti si Examene optiunea Cascade Update Related Fields nu a fost bifata);
īn aceeasi tabela, se va testa restrictia la stergere īncercānd suprimarea īnregistrarii cu matricolul ELZ04020; rezultatul va presupune un alt esec datorita restrictionarii stergerii īn tabela parinte Studenti (la definirea relatiei dintre tabelele Studenti si Examene optiunea Cascade Delete Related Records nu a fost bifata);
īn tabela AdresaPostala, se va testa modificarea īn cascada īncercānd de fapt corectarea īnregistrarii cu CodAdrP=607450 astfel: noul CodAdrP=607451 īn timp ce noua Localitate=Balanesti; rezultatul va fi sesizabil si la nivelul tabelei AdresaFizica datorita regulii de propagare a modificarilor īn cascada (optiunea Cascade Update Related Fields a fost bifata);
īn tabela Judete, se va testa stergerea īn cascada pentru īnregistrarea cu indicativul de judet CJ; rezultatul va fi evident la nivelul tabelei AdresaPostala datorita regulii de propagare a stergerii īn cascada (optiunea Cascade Delete Related Records a fost bifata);
respectiv
īn aceeasi tabela Judete, īnsa, stergerea īn cascada se poate solda cu esec; astfel, īncercānd stergerea īnregistrarii cu indicativul de judet BC vom obtine un rezultat nefavorabil desi optiunea Cascade Delete Related Records a fost bifata;
Explicatia este relativ simpla daca privim relationarile dintre tabele pentru ultimele doua cazuri
respectiv
Este mai mult decāt evident ca ultima stergere intra īn conflict cu restrictiile de integritate referentiala declarate īntre tabelele Studenti si Examene, unde nu functioneaza stergerea īn cascada ci restrictia la stergere. Mai precis, īn cascada, se īncearca īn cele din urma stergerea efectiva a unei īnregistrari din tabela Examene si anume:
.
La fel de evident, penultima stergere nu presupune, īn final, stergerea vreunei īnregistrari din tabela Examene.
Deci va fi permisa īn conditiile īn care nu va intra īn conflict cu restrictia la stergere definita īntre tabelele Studenti si Examene.
restrictia la inserare īn tabela copil se poate testa pe tabela Examene corelata cu tabela parinte Studenti, prin adaugarea unui matricol, īn prima varianta, inexistent īn tabela Studenti - gjhgjhg;
ulterior, restrictia la inserare īn tabela
copil Examene se va testa cu valori teoretic permise si va functiona
(matricolul ELZ01012, īn cea
de-a doua varianta, se regaseste īn tabela parinte Studenti);
|