Systemy baz danych 13.03.2013 1. Plan: 7. Projekt Bazy Danych - wybór tematów, wstępna kategoryzacja 8. Projekt Bazy Danych - diagram ER 2. Zadania: 1. Zastanowić się nad tematem do opracowania bazy danych wybrać jakiś wycinek rzeczywistości np. zajęcia z j. polskiego, rezerwacja wycieczek w biurze podróży. Najlepiej jeśli temat jest wybrany z otoczenia, które nas dotyczy i dla którego jesteśmy w stanie zebrać dane np. z firmy dla której pracujemy, z uczelni, z domu, itd.. 2. Identyfikacja obiektów np. uczniowie, oceny, prace, nauczyciele. 3. Identyfikacja typów informacji dla każdego obiektu np. dla obiektu uczeń: identyfikator ucznia, imię, nazwisko, itd.. 4. Identyfikacja relacji między obiektami np.: relacja pomiędzy obiektami nauczyciele a oceny jest następująca: każdy nauczyciel może wystawić wiele ocen, a każda ocena może być wystawiona tylko przez jednego nauczyciela, jest to relacja typu jeden-do-wielu, relacja pomiędzy uczniowie a oceny: każdy uczeń może mieć wiele ocen, a każda ocena może należeć do jednego ucznia relacja jeden-do-wielu, relacja prace-oceny: jedna praca może mieć jedną ocenę, a każda ocena dotyczy jednej pracy relacja jeden-do-jeden (rzadko używana), relacja uczniowie-prace: każdy uczeń może mieć wiele prac, a każda praca może mieć wielu uczniów (praca grupowa) relacja wiele-do-wielu. 5. Opracować diagram związków encji (ERD - Entity-Relationship Diagram) dla wybranego tematu bazy danych. 1/7
3. Ćwiczenia: 1. Tworzenie diagramu ERD: 1. Oprogramowanie do tworzenia diagramów Dia można bezpłatnie pobrać ze strony: http://live.gnome.org/dia 2. Uruchomić program Dia. 3. Aby ułatwić sobie edycję, z menu Widok można włączyć Przyciąganie do siatki. 4. Z menu w pasku narzędzi zamiast Diagram przepływu wybrać Database. 2/7
5. Kliknąć na przycisk Table a następnie na pole robocze oby dodać tabelę, reprezentującą encję. 6. Kliknąć dwa razy na nowo dodaną tabelę aby edytować jej opcje. 7. W polu Table name należy podać nazwę encji. 8. W zakładce Atrybuty należy kliknąć Nowy aby wstawić nowy atrybut, który reprezentuje typ informacji tworzonego obiektu. 3/7
9. W polu Nazwa należy wpisać nazwę atrybutu, w polu Typ należy podać typ danych atrybutu np. liczba, tekst, wartość logiczna, obrazek itd.. Pole Primary key pozwala zdefiniować czy dany atrybut ma być kluczem głównym atrybutu. Pole Nullable pozwala zdefiniować czy atrybut może przyjmować wartości puste. Jeśli tak, oznacza to, że atrybut jest opcjonalny. Pole Unique pozwala zdefiniować czy atrybut musi zawierać wartości unikatowe, czyli pozwala na ustalenie czy wszystkie wartości tego atrybutu muszą być niepowtarzalne w każdym wierszu tabeli. 4/7
10. Dodawanie encji/tabel należy powtórzyć dla każdego zidentyfikowanego obiektu. 11. Przed dodaniem relacji pomiędzy obiektami, należy najpierw ustawić odpowiedni styl linii. W UML używana jest linia prosta (bez strzałek). 12. Aby dodać relację należy kliknąć na przycisk Reference a następnie przeciągnąć kursor od dowolnego niebieskiego punktu na krawędzi jednego obiektu do punktu na krawędzi drugiego. 5/7
13. Aby edytować relację należy kliknąć na nią dwukrotnie. W polach Start description i End description należy wprowadzić odpowiednią liczebność w zależności od typu relacji. 14. Po zakończeniu tworzenia relacji, należy dodać dla nich odpowiednie etykiety. W tym celu należy wcisnąć przycisk Tekst, następnie kliknąć nad relację, dla której chcemy wprowadzić etykietę, oraz wprowadzić tekst. 15. W przypadku gdy etykieta nie może być używana zamiennie, czytając od jednego obiektu do drugiego, należy umieścić dwie etykiety, tak aby relacja miała sens. W takim przypadku etykiety powinny znajdować się bliżej obiektu, do którego się odnoszą. 6/7
16. Relację wiele-do-wielu należy rozłączyć na dwie relacje jeden do wielu, stosując tabelę skrzyżowań (tabela łączy). 7/7