Podobne
- Strona startowa
- R 17 t (2)
- Flawiusz Wojna Zydowska
- Jan Potocki Rękopis znaleziony w Saragossie (tom. I)
- Card Orson Scott Zadomowienie (2)
- Norton Andre Gwiezdny zwiad
- McCaffrey Anne Statek ktory zw
- Callan Book 6 [Stage 11]
- Anthony Piers Przesmyk Centaura (SCAN dal 931
- Tolkien J.R.R powrot krola
- Smith Scott Prosty Plan
- zanotowane.pl
- doc.pisz.pl
- pdf.pisz.pl
- alu85.keep.pl
Cytat
Do celu tam się wysiada. Lec Stanisław Jerzy (pierw. de Tusch-Letz, 1909-1966)
A bogowie grają w kości i nie pytają wcale czy chcesz przyłączyć się do gry (. . . ) Bogowie kpią sobie z twojego poukładanego życia (. . . ) nie przejmują się zbytnio ani naszymi planami na przyszłość ani oczekiwaniami. Gdzieś we wszechświecie rzucają kości i przypadkiem wypada twoja kolej. I odtąd zwyciężyć lub przegrać - to tylko kwestia szczęścia. Borys Pasternak
Idąc po kurzych jajach nie podskakuj. Przysłowie szkockie
I Herkules nie poradzi przeciwko wielu.
Dialog półinteligentów równa się monologowi ćwierćinteligenta. Stanisław Jerzy Lec (pierw. de Tusch - Letz, 1909-1966)
[ Pobierz całość w formacie PDF ]
.Dodajmy te niezbędne dane do tabeli Matematyka.rys 17.7 Projekt tabeli uzupełnionej o dane personalneNa pierwszy rzut oka projekt tabeli wygląda niezle pamiętając o wyodrębnianiu danychelementarnych utworzyliśmy trzy nowe kolumny, jedną, w której przechowywać będziemyinformacje o adresie ucznia (ponieważ nie wydaje się, żeby informacje o ulicy, czy kodziekiedykolwiek była potrzebna jako osobne dane wg.których można by np.wyszukiwać, czysortować dane), jedną z imionami rodziców i jedną dla przechowywania numeru telefonukontaktowego.Zobaczmy jednak, jak wygląda nasza nowa tabela wypełniona danymi.rys 17.8 Tabela Matematyka z danym personalnymi.3Taki model danych nazywany jest modelem jednorodnym.To, czego nie sposób nie zauważyć, to niesamowita nadmiarowość informacji.Dane o adresie,imionach rodziców, numerze telefonu, imieniu i nazwisku powtarzają się dla każdego ucznia tylerazy, ile ocen z matematyki dostał on w tym roku szkolnym.Nietrudno zauważyć, że jeżeli do tejtabeli dopisalibyśmy oceny z innego przedmiotu, sytuacje wyglądałby o wiele gorzej.Szybkodoprowadzilibyśmy do tego, że do przechowywania względnie prostej informacji o kilku, czykilkunastu ocenach z jednego przedmiotu potrzebować będziemy kilkuset kilobajtowego pliku nadysku.Nadmiarowość jest jednym z powodów grupowania danych o różnych obiektach w odrębnychtabelach.W naszym przykładzie łatwo wyodrębnić elementarne dane opisujące ucznia (ID ucznia, Imię,Nazwisko, Adres, Imiona rodziców, Telefon kontaktowy) od danych opisujących oceny ucznia(IDucznia, Ocena, Zdobyta za).Nadmiarowość nie jest jedynym powodem, dla którego powinniśmy grupować dane oposzczególnych typach obiektów w wielu tabelach.W modelu jednorodnym stosunkowo trudnojest zachować spójność i adekwatność danych.W naszym przypadku, jeżeli Małgosiazdecydowałaby się wyprowadzić od rodziców, informację o jej nowym adresie musielibyśmymodyfikować tyle razy, ile ocen ma Małgosia.W nieco bardzie skomplikowanych przypadkachmogłoby się okazać, że jedna, drobna zmiana adresu pociąga za sobą modyfikacje kilkuset, czykilku tysięcy rekordów.A co, jeżeli dane o adresie zmienimy 123 221 razy, a w 5 891 komórkachpozostaną one niezmienione?Anomalie przy modyfikacji są kolejnym powodem logicznego grupowania danych w odrębnychtabelach.Kolejnym utrudnieniem w zarządzaniu jednorodnym modelem danych jest koniecznośćwprowadzania nowych danych o jednym obiekcie do wielu4 rekordów.Wracając do naszej tabeliMatematyka gdyby Krzyś zdecydował się nieroztropnie podać nauczycielowi numer telefonu4Problemem jest również to, że liczba rekordów, które będziemy musieli dopisać do bazy jest zależna odwcześniej wprowadzonych do niej danych.rodziców, SZBD musiałby wpisać tą informację w liczbę pól równą ilości ocen Krzysia zmatematyki.Anomalie powstałe przy wstawianiu danych są kolejnym powodem logicznego grupowaniadanych w odrębnych tabelach.Niestety, to nie koniec wad modelu jednorodnego.Kolejny, poważny mankament związany zprzechowywaniem danych w pojedynczej tabeli związany jest z usuwaniem pewnych danych oobiekcie.W naszym przypadku, jeżeli pewien uczeń z klasy nie miałby żadnej oceny zmatematyki (co odpowiada sytuacji, w której wszystkie oceny z matematyki zostałby temuuczniowi anulowane) z tabeli usunięte zostały by również dane personalne ucznia.Anomalie związane z usuwaniem danych są czwartym powodem, dla którego powinno sięgrupować dane opisujące obiekty różnego rodzaju w osobnych tabelach.Stosując się do powyższych zaleceń zmieńmy projekt tabeli Matematyka, dzieląc przechowywanew niej dane pomiędzy dwie tabele: tabelę Matematyka i tabelę Uczeń5.rys 17.9 wynik podziału tabeli Matematyka na tabelę Uczeń i tabelę MatematykaW rezultacie otrzymaliśmy dwie tabelę, żadna z informacji przechowywanych w bazie nie zostałautracona (z wyjątkiem informacji nadmiarowych, ale to poczytujemy sobie za atut, nie wadęnowego rozwiązania), a nasze rozwiązanie wolne jest od anomalii modyfikacji, wstawiania i5Nazwy tabeli powinny odzwierciedlać typ obiektu, o którym informacje przechowujemy.Nazwy tabelpowinny przybierać formę mianownika l.pojedynczej (a więc tabela Uczeń, a nie Uczniowie)usuwania danych.Niejasne może pozostawać przeznaczenie tabeli ID ucznia, znajdującej się wobu nowych tabelach.Opisem tej tabeli zajmiemy się w kolejnym rozdziale
[ Pobierz całość w formacie PDF ]