Projektując bazy danych na potrzeby witryn internetowych warto skorzystać z bezpłatnego narzędzia o nazwie DBDesigner. Program ten umożliwia nie tylko wizualne projektowanie baz danych, ale także synchronizację modelu bazy danych z serwerem.
DBDesigner (http://fabforce.net) jest rozpowszechniany na licencji GNU GPL, a zatem jest całkowicie bezpłatny zarówno do użytku domowego, jak i zastosowań komercyjnych.
{tlo_1}
Okno główne aplikacji DBDesigner4
A – Obszar roboczy
B – Okno nawigacyjne
C – Typy danych
D – Struktura bieżącej bazy danych
E – Pasek narzędzi
F – Wiersz stanu zawierający przyciski
A – Przycisk New Table dodający nową tabelę
B – Tabela umieszczona na obszarze roboczym
C – Struktura bazy danych wyświetlana w oknie DB Model
{/tlo}
{tlo_0}
Dodawanie nowej tabeli
Po utworzeniu nowego projektu opcją File | New przystępujemy do projektowania bazy danych. Dodajemy pierwszą tabelę.
Klikamy przycisk New Table na pasku narzędzi, a następnie klikamy w dowolnym punkcie obszaru roboczego. W bazie danych pojawi się tabela o domyślnej nazwie {stala}Table_01{/stala}.
A – Narzędzie Pointer służące do wskazywania i przesuwania obiektów
B – Tabela {stala}Table_01{/stala} po przesunięciu w inne miejsce obszaru roboczego
{/tlo}
{tlo_1}
Przesuwanie tabeli w obszarze roboczym
Tabele możemy dowolnie przesuwać w obszarze roboczym. W tym celu stosujemy narzędzie Pointer oraz technikę ciągnij-upuść.
A – Nazwa tabeli
B – Kolumny tabeli
C – Przyciski zatwierdzające oraz anulujące wprowadzone zmiany
{/tlo}
{tlo_0}
Edytor tabeli
Podwójne kliknięcie tabeli w obszarze roboczym pozwala na modyfikowanie jej właściwości. W edytorze tabeli wprowadzamy nazwę tpanstwa i dodajemy dwa pola: idpanstwa oraz nazwa.
A – Typ kolumny
B – Niedozwolona wartość NULL (NOT NULL)
C – Automatyczne zwiększanie wartości o 1 (AUTO INCREMENT)
D – Dodatkowe opcje kolumny zależne od typu
E – Wartość domyślna
F – Lista rozwijana służąca do wyboru typu kolumny
{/tlo}{tlo_1}
Definicja kolumn tabeli
W edytorze tabeli możemy dowolnie ustalać, dodawać i modyfikować kolumny. Do wyboru typu kolumny służy lista rozwijana, zaś dodatkowe właściwości, takie jak NOT NULL czy AUTO INCREMENT, definiujemy klikając odpowiednie miejsce edytora.
A – Tabela {stala}tpanstwa{/stala} z widocznymi nazwami i typami pól
B – Okno DB Model umożliwia przeglądanie tabel i ich kolumn
{/tlo}
{tlo_0}
Po modyfikacji właściwości tabeli w edytorze zmiany są widoczne w obszarze roboczym. Widzimy nową nazwę tabeli oraz listę jej kolumn.
{/tlo}
{tlo_1}
Modyfikacja wyglądu tabel
Opcje zawarte w menu głównym Display | Table columns modyfikują widok tabeli w obszarze roboczym. Możemy zmienić poziom szczegółowości danych dotyczących kolumny na encje, klucze pierwotne, atrybuty oraz dołączyć informacje o typach kolumn i o kluczach obcych.
A, B – Przyciski do rozwijania/zwijania widoku tabeli
{/tlo}
{tlo_0}
Modyfikacja wyglądu tabeli przyciskami
Tabele dodane do bazy danych mają przyciski umożliwiające rozwinięcie i schowanie pól tabeli. W taki sposób możemy modyfikować wygląd każdej tabeli z osobna.
A – Tabele widoczne w obszarze roboczym
B – Struktura bazy danych
{/tlo}
{tlo_1}
Dodajemy tabelę tmiasta
Dodajemy do bazy danych tabelę {stala}tmiasta{/stala}. Wybieramy narzędzie New Table i klikamy obszar roboczy. Następnie przechodzimy do edycji tabeli, która domyślnie nazywa się {stala}Table_02{/stala}. Podwójnie klikamy tabelę leżącą na obszarze roboczym, po czym w edytorze tabeli ustalamy jej kolumny i nazwę.
A – Narzędzie tworzenia nowej relacji 1:n New 1:n relation
B – Po wybraniu narzędzia klikamy tabelę {stala}tpanstwa{/stala}
C – A następnie tabelę {stala}tmiasta{/stala}
D – Relacja jest wyświetlana w obszarze roboczym w postaci linii łączącej tabele
E – Dodana relacja jest widoczna w oknie DB Model
{/tlo}
{tlo_0}
Tworzymy relację 1:n łączącą tabele tmiasta i tpanstwa
W celu dodania relacji 1:n najpierw na pasku narzędzi klikamy ikonę New 1:n relation. Gdy narzędzie jest aktywne, klikamy kolejno: tabelę {stala}tpanstwa{/stala}, a następnie tabelę {stala}tmiasta{/stala}. W obszarze roboczym pojawi się linia łącząca tabele. Linia ta reprezentuje relacje. Ponadto w tabeli tmiasta pojawi się pole o nazwie {stala}tpanstwa_idtpanstwa{/stala}, będące kluczem obcym (FK).
A – Narzędzie Pointer służy między innymi do edycji tabel i relacji
B – Edytor relacji uruchamiamy podwójnym kliknięciem linii reprezentującej relację
{/tlo}
{tlo_1}
Uruchamianie edytora relacji
Relacje zawarte w bazie danych możemy edytować. Po wybraniu narzędzia Pointer podwójnie klikamy linię reprezentującą relację.
A – Pole do edycji nazwy relacji
B – Nazwa kolumny w tabeli docelowej
{/tlo}
{tlo_0}
Edycja relacji
Edytor relacji umożliwia zmianę nazwy relacji oraz nazwy klucza obcego. Jako nazwę relacji podajemy panstwa-miasta, zaś jako nazwę klucza obcego stosujemy nazwę identyfikatora państwa w tabeli {stala}tpanstwa{/stala} (czyli {stala}idtpanstwa{/stala}) bez domyślnego prefiksu {stala}tpanstwa_{/stala}.
{/tlo}{tlo_1}
Dwie tabele i relacja
Otrzymaliśmy dwie tabele {stala}tpanstwa{/stala} oraz tmiasta połączone relacją 1:n.
{/tlo}
{tlo_0}
Modyfikacja wyglądu relacji
Opcje zawarte w menu Display | Notation umożliwiają zmianę wyglądu relacji. Dostępne są cztery typy nazywane EER, EER [1,n], Traditional oraz Crows foot. Dodatkowo opcja Display | Display Relation Names pozwala na wyświetlanie nazw relacji.
A – Narzędzie New region
B – Punkt, od którego rozpoczynamy rozpinanie regionu
C – Punkt kończący region
{/tlo}
{tlo_1}
Dodajemy region
W większych projektach korzystne jest wprowadzenie wizualnego podziału tabel i relacji na pewne fragmenty. Zadanie to umożliwiają regiony.
Po wybraniu narzędzia New region \”rozpinamy\” w obszarze roboczym prostokąt, stosując technikę ciągnij-upuść. Domyślnie region nazywa się {stala}Region_01{/stala}.
{/tlo}
{tlo_0}
Edytor właściwości regionu
Edytor właściwości regionu umożliwia wprowadzenie nowej nazwy regionu oraz zmianę koloru regionu. W polu regionname wprowadzamy napis \”Państwa i miasta\”.
A – Narzędzie do przesuwania regionów
B – Gumka do usuwania tabel, relacji i regionów
{/tlo}
{tlo_1}
Przesuwanie regionu
Stosując narzędzie do przesuwania regionu możemy przemieszczać po obszarze roboczym wszystkie tabele i relacje zawarte w regionie. Natomiast gumka służy do usuwania tabel, relacji i regionów.
{/tlo}
W ten sposób otrzymaliśmy bazę danych zawierającą dwie tabele i jedną relację. Bazę danych zapisujemy do pliku, korzystając z opcji File | Save.