Porady

Wizualne tworzenie bazy danych MySQL. Jak stworzyć strukturę bazy danych.

Ciężko wyobrazić sobie dzisiaj rozbudowaną stronę internetową, która nie korzystałaby z bazy danych. Większość dostępnych w internecie stron korzysta z baz danych MySQL, które nierzadko są bardzo rozbudowane. W tym poradniku pokażemy Wam jak stworzyć od podstaw strukturę bazy danych MySQL zaczynając od tabeli, a skończywszy na relacjach pomiędzy nimi.

 1 Tworzenie bazy danych MySQL – podstawy krok po kroku

W celu stworzenia struktury bazy danych MySQL skorzystamy z darmowego narzędzia o nazwie MySQL Workbench. Naszym celem będzie utworzenie prostej bazy danych, która obsłuży księgarnie – a więc będzie posiadała tabele „Książki”, „Autorzy”, „Pożyczający”. Dla przypomnienia pojedyncza tabela w bazie danych składa się z kolumn (np. Imię, Nazwisko, Adres …) i przechowuje dane o obiektach – pojedynczy wiersz w tabeli to rekord. Najważniejszym kluczem w tabeli jest klucz główny, oraz klucz obcy – pierwszy z nich jednoznacznie identyfikuje rekord, natomiast klucz obcy jest kluczem głównym w innej tabeli. Innymi słowy za pomocą mechanizmu kluczy obcych można stworzyć relacje pomiędzy tabelami (jeden do wielu, jeden do jednego, wiele do wielu).

mysql workbench tworzenia bazy danychPo zainstalowaniu i uruchomieniu narzędzia MySQL Workbench, należy wybrać opcje File -> New Model. W kolejnym kroku należy wybrać opcję Add Table – gdzie będziemy mogli utworzyć tabele bazy danych:

mysql workbench tworzenia bazy danych

W polu Table Name wpisujemy nazwę tabeli, natomiast w polu Column Name nazwę poszczególnych pól. Warto zwrócić uwagę na typ danych (Datatype), oraz opcje PK, NN – które reprezentują klucz główny (primary key), a dodatkowo ich wartość nie może być pusta (not null).

Po utworzeniu tabel klikamy przycisk Add Diagram, aby utworzyć relację pomiędzy tabelami – na diagram przeciągamy wszystkie tabele widoczne w menu po lewej stronie:

mysql workbench tworzenia bazy danychObecnie tabele nie są powiązane żadną relacją i w ten sposób moglibyśmy je równie dobrze zaimplementować na stronie internetowej, ale nie jest to dobre rozwiązanie. Musielibyśmy zadbać o odpowiednią integrację danych, na przykład podczas dodawania danych i ich usuwania. Tworząc relację pomiędzy tabelami możemy znacznie ułatwić pracę i zmniejszyć ilość kodu potrzebną do jej obsługi.

Wyróżniamy trzy relacje:

  • Jeden do jednego (najczęściej stosowana) 1:1
  • Jeden do wielu (równie często stosowana) 1:N
  • Wiele do wielu (bardzo rzadko stosowana) N:N

Wracając do naszej bazy danych, należy zauważyć, że tabela autorzy powinna być w pewien sposób powiązana z tabelą książek. W uproszczeniu przyjmijmy, że książka może posiadać wyłącznie jednego autora, natomiast pisarz może być autorem wielu książek – a więc właściwa będzie tutaj relacja jeden – do – wielu. Podobną relację utworzymy dla tabel Pożyczający i Książki – książka może zostać wypożyczona w tym samym czasie tylko przez jedną osobę, ale pożyczający może jednocześnie wypożyczyć kilka książek.

mysql workbench tworzenia bazy danychRelację tworzymy z wykorzystaniem narzędzi umieszczonych na pasku narzędziowym:

mysql workbench tworzenia bazy danych

Proszę zwrócić uwagę na fakt, że relacja automatycznie utworzy nam dodatkowe klucze obce w tabeli (min. Autorzy_idAutorzy, Pozyczajacy_idPozyczajacy).

mysql workbench tworzenia bazy danychW naszym przykładzie musieliśmy zmodyfikować jeden z kluczy obcych odnoszący się do tabeli Pożyczający – a mianowicie odznaczyć pozycję NN (not null). Jest to konieczne, ponieważ gdyby relacja pomiędzy tabelą Książki i Autorzy miała zaznaczoną opcję „NN”, to w celu utworzenia rekordu Książki, musielibyśmy jednocześnie utworzyć rekord Pożyczający, Innymi słowy nie istniałaby książka, która nie została wypożyczona – w bazie danych musiałyby znajdować się wyłącznie książki, które zostały wypożyczone (posiadają identyfikator Pożyczającego).

I na tym w zasadzie moglibyśmy zakończyć wizualne tworzenie bazy danych MySQL – teraz przyszła kolej na wyeksportowanie bazy danych, tak aby można ją było utworzyć na zdalnym serwerze – o tym piszemy na drugiej stronie.

Strony: 1 2

2 komentarze

2 Comments

  1. Olek

    5 stycznia 2017 o 15:54

    Dziękuję za wpis.
    Pomógł mi bardzo w projekcie mojej bazy.

  2. Waldek

    13 maja 2019 o 13:56

    To jak się tworzy zbiór bazy co to punkt 2 to nie dziala

Napisz Komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Na Górę