<12>
szej eksploatacji tej bazy danych nie będzie potrzeby dodania kolejnych kolumn, np. aby zapisać więcej niż jeden numer telefonu albo adres strony www, numer faksu, numer 6G... itd.
6789S73452
Widać wyraźnie, że zaproponowane przez nas rozwiązanie nie jest trwałe i elastyczne, czyli bardzo łatwo, w trakcie eksploatacji bazy danych, może się okazać, że nasze tabele nie są w stanie zapisać danych, które są potrzebne użytkownikom.
A może chwila zastanowienia i rozwiązać ten problem raz a dobrze? Widać, że problemem staje się ustalenie jakie dane mogą być nam potrzebne. Zaproponujemy w takim razie utworzenie tabeli, która będzie takie dane przechowywał - we wcześniej omawianym projekcie występowały podobne tabele, zwane tabelami słownikowymi. Poniżej pokazana jest struktura takiej tabeli oraz przykładowa jej zawartość.
Jeżeli będziemy dodatkowo potrzebowali przechowywać w bazie danych informacje o numerach Gadu Gadu i adresy stron WWW - to wystarczy dopisać kolejne wiersze do tabeli i otrzymamy tabelę z odpowiadającą nam zawartością. Tym razem nie wymaga to dodania nowych kolumn do istniejącej tabeli, co jest czynnością trudną i złożoną w działającej bazie danych, a jedynie dopisanie nowego wiersza lub wierszy do istniejącej tabeli, a to jest czynnością całkowicie naturalna w bazie danych. Poniżej jest pokazana tabela z uzupełnionymi wpisami.
idRodzajuKontaktu Nazwa
1 |
Telefon stacjonarny |
2 |
Telefon komórkowy |
3 |
|
4 |
Numer GaduGadu |
5 |
Strona WWW |
Wykonaliśmy pierwszy krok, ale do rozwiązania problemu droga jeszcze daleka. W kolejnym kroku modyfikujemy tabelę Klienci, usuwając z niej wszystkie kolumny przechowujące dane o kontaktach. Struktura tabeli po modyfikacji jest pokazana poniżej.
Klienci
$ idIOienta Nazwa Nip
KodPocztowy
Ulica
Tabela ta została trochę odchudzona i tym samym uproszczona, ale w dalszym ciągu nie mamy miejsca na zapisywanie danych o kontaktach konkretnych klientów. Ostatnią tabelą, którą musimy utworzyć, jest tabe-