Działanie aplikacji internetowych, prezentujących duże ilości informacji, opiera się na bazach danych. W artykule pokażemy, jak przygotować model bazy danych przechowującej informacje o muzyce rockowej. Użyte tabele i relacje umożliwią zapisywanie szczegółowych danych o płytach, poszczególnych utworach, muzykach oraz zespołach.
- A – Pointer – narzędzie do wskazywania, edycji oraz przesuwania obiektów
- B – Mover – narzędzie do przesuwania regionów
- C – Resize – narzędzie do skalowania regionów
- D – Delete – narzędzie do usuwania obiektów
- E – New Region – narzędzie do tworzenia regionów
- F – New Table – narzędzie do tworzenia tabel
- G – New 1:n non-identifying relation – narzędzie do tworzenia relacji 1:n
- H – New n:m relation – narzędzie do tworzenia relacji n:m
- I – Narzędzie tekstowe
- J – Generowanie skryptu SQL
{tlo_1}
Krok 1. Tworzymy tabelę {stala}tutwor{/stala}
Uruchamiamy aplikację DBDesigner, a następnie za pomocą narzędzia New Table dodajemy nową tabelę. Utworzona tabela będzie się początkowo nazywała {stala}Table_01{/stala}.
{/tlo}
{tlo_0}
Krok 2. Edytor tabeli
Podwójnym kliknięciem uruchamiamy edytor właściwości tabeli. Zmieniamy nazwę tabeli na tutwor i definiujemy pola.
{/tlo}
{tlo_1}
Krok 3. Tabela {stala}tplyta{/stala}
W podobny sposób dodajemy tabelę {stala}tplyta{/stala}.
{/tlo}
{tlo_0}
Krok 4. Tabela {stala}tzespol{/stala}
Następnie dodajemy tabelę {stala}tzespol{/stala}.
{/tlo}
{tlo_1}
Krok 5. Tabela osoba
Jako ostatnią definiujemy tabelę {stala}tosoba{/stala}.
{/tlo}
{tlo_0}
Krok 6. Cztery tabele
Baza danych zawiera teraz cztery tabele: {stala}tutwor{/stala}, {stala}tplyta{/stala}, {stala}tzespol{/stala}, {stala}tosoba{/stala}.
{/tlo}{tlo_1}
Krok 7. Region tabeli {stala}tutwor{/stala}
Korzystając z narzędzia New Region tworzymy nowy region, po czym stosując technikę ciągnij-upuść przesuwamy tabelę tutwor na nowo utworzony region.
{/tlo}
{tlo_0}
Krok 8. Edytor regionu
Dodajemy region przeznaczony na tabele opisujące płyty. Region ten nazywamy Płyty. Umieszczamy na nim tabelę tplyty.
{/tlo}
{tlo_1}
Krok 9. Region tabeli {stala}tplyta{/stala}
Dodajemy region przeznaczony na tabele opisujące płyty. Region ten nazywamy Płyty. Umieszczamy na nim tabelę {stala}tplyty{/stala}.
{/tlo}
{tlo_0}
Krok 10. Rodzaj płyty
W regionie Płyty dodajemy nową tabelę {stala}tplyta_rodzaj{/stala}. Tabela ta będzie przechowywała informacje o rodzajach płyt.
{/tlo}
{tlo_1}
Krok 11. Relacja płyta-rodzaj
Tabele {stala}tplyta{/stala} oraz {stala}tplyta_rodzaj{/stala} łączymy relacją 1:n. Na pasku narzędzi naciskamy przycisk New 1:n non-identifying relation po czym klikamy tabelę {stala}tplyta_rodzaj{/stala}, a następnie tabelę {stala}tplyta{/stala}.
{/tlo}
{tlo_0}
12. Edytor relacji
Aby zmienić nazwę klucza obcego, oznaczonego na rysunku literami FK (ang. foreign key), przechodzimy do edytora właściwości relacji. W tym celu podwójnie klikamy linię reprezentującą relację.
{/tlo}{tlo_1}
Krok 13. Pole tekstowe
Następnie dodajemy do modelu pole tekstowe, będące komentarzem przypominającym rolę tabeli {stala}tplyta_rodzaj{/stala}. Wybieramy narzędzie tekstowe po czym klikamy w pobliżu tabeli {stala}tplyta_rodzaj{/stala}.
{/tlo}
{tlo_0}
Krok 14. Edytor pola tekstowego
Podwójne kliknięcie pola tekstowego uruchamia edytor pozwalający na modyfikacje tekstu.
{/tlo}
{tlo_1}
Krok 15. Wykonawca
Dodajemy do modelu kolejny region. Jest on przeznaczony na tabele zawierające dane o zespołach i muzykach, czyli o wykonawcach utworów. Na regionie tym umieszczamy tabele {stala}tzespol{/stala} oraz {stala}tosoba{/stala}. Region nazywamy Wykonawca/Autor.
{/tlo}
{tlo_0}
Krok 16. Członkowie zespołu
Tabele {stala}tzespol{/stala} oraz {stala}tosoba{/stala} łączymy relacją n:m. Wybieramy narzędzie New n:m relation po czym klikamy tabele {stala}tzespol{/stala} oraz {stala}tosoba{/stala}. W obszarze roboczym pojawi się nowa tabela o nazwie {stala}tzespol_has_tosoba{/stala}.
{/tlo}
{tlo_1}
Krok 17. Trzy regiony
Otrzymaliśmy bazę danych zawierającą trzy regiony. Regiony te są przeznaczone na informacje dotyczące utworów, płyt oraz wykonawców.
{/tlo}
{tlo_0}
Krok 18. Tabela {stala}twykonawca{/stala}
W regionie Wykonawca/Autor dodajemy tabelę {stala}twykonawca{/stala}. Łączymy ją relacjami 1:n z tabelami {stala}tosoba{/stala} oraz {stala}tzespol{/stala}, po czym dodajemy pole logiczne {stala}osobazespol{/stala}.
Tabela ta będzie służyła do wybierania autorów, wykonawców, muzyków, realizatorów nagrań itd. z tabel {stala}tzespol{/stala} oraz {stala}tosoba{/stala}. Pole {stala}osobazespol{/stala} będzie odgrywało rolę indykatora wybierającego tabelę {stala}tosoba{/stala} lub {stala}tzespol{/stala}.
{/tlo}
{tlo_1}
Krok 19. Rodzaj wykonawcy
Dodajemy tabelę {stala}twykonawca_rodzaj{/stala} i łączymy ją relacją 1:n z tabelą {stala}twykonawca{/stala}. W tabeli {stala}twykonawca_rodzaj{/stala} będziemy przechowywali informacje o funkcji pełnionej przez konkretną osobę lub zespół w odniesieniu do utworu lub płyty.
{/tlo}{tlo_0}
Krok 20. Wykonawca utworu
Tabelę {stala}twykonawca{/stala} łączymy relacją n:m z tabelą {stala}tutwor{/stala}. W ten sposób będziemy przechowywali informacje dotyczące konkretnego utworu: autora tekstu, autora muzyki, wykonawcę, realizatora nagrania czy producenta (każdą z tych funkcji może pełnić pojedyncza osoba lub cały zespół!)
{/tlo}
{tlo_1}
Krok 21. Wykonawca płyty
W podobny sposób ustalamy wykonawcę płyty. Tabelę {stala}tplyta{/stala} łączymy relacją n:m z tabelą {stala}twykonawca{/stala}.
{/tlo}
{tlo_0}
Krok 22. Wykonawca utworu i płyty
Otrzymaliśmy model zawierający trzy regiony połączone relacjami.
{/tlo}
{tlo_1}
Krok 23. Utwory z płyty
Relacją n:m połączymy tabele {stala}tplyta{/stala} oraz {stala}tutwor{/stala}. Umożliwi to przechowywanie informacji o liście utworów zawartych na każdej z płyt.
{/tlo}
{tlo_0}
Krok 24. Studia nagraniowe i koncerty
W celu wzbogacenia bazy danych o informacje dotyczące studia nagrań oraz ewentualnie koncertu definiujemy nowy region Studio/Koncert i umieszczamy na nim tabele {stala}tstudiokoncert{/stala}, {stala}tadres{/stala} oraz {stala}tstudiokoncert_rodzaj{/stala}.
{/tlo}{tlo_1}
Krok 25. Utwory, płyty, studia nagraniowe i koncerty
Tabelę {stala}tstudiokoncert{/stala} łączymy relacjami 1:n z tabelami {stala}tutwor{/stala} oraz {stala}tplyta{/stala}. Relacje te umożliwią ustalenie miejsca nagrania utworu lub całej płyty.
{/tlo}
{tlo_0}
Krok 26. Fotografie
Dodajemy nowy obszar o nazwie Foto. W obszarze tym umieszczamy tabele oraz relacje, które umożliwią przechowywanie fotografii zespołów, poszczególnych osób, okładek płyt, sal koncertowych oraz studiów nagrań.
{/tlo}
{tlo_1}
Krok 27. Baza danych Muzyka rockowa
Otrzymaliśmy bazę danych, która umożliwia przechowywanie informacji dotyczących płyt, utworów, osób, zespołów, sal koncertowych oraz studiów nagrań. Baza ta umożliwia między innymi przechowywanie złożonych informacji na temat konkretnego utworu: od wykonawcy i autora po dowolnie długą listę osób i zespołów, które w jakikolwiek sposób przyczyniły się do jego powstania (m.in. gości grających na różnych instrumentach, realizatorów nagrań, czy – jak jest napisane na płycie In Rock zespołu Deep Purple – katalizatorów).
{/tlo}
{tlo_0}
Krok 28. Eksport skryptu SQL
Wykonany model możemy wyeksportować w postaci skryptu SQL tworzącego wszystkie tabele. W tym celu wybieramy narzędzie SQL Creates Script, a następnie w oknie dialogowym ustalamy pożądane właściwości skryptu SQL.
Po naciśnięciu przycisku Copy script to clipboard skrypt zostanie umieszczony w schowku.
{/tlo}
{tlo_1}
Krok 29. Skrypt SQL
Po wykonaniu operacji Wklej w edytorze pojawi się kod skryptu SQL.
{/tlo}