Mam problem z napisaniem dokumentacji bazy danych. Czy ktoś z was dysponuje taką przykładową dokumentacją, albo opisem 'jak to się robi'? Potrzebuję rzetelnego wzoru na którym mógłbym sie oprzeć.
zazwyczaj sprowadza się to do
a) model bazy (ładna graficzka z tabelkami i powiązaniami między nimi)
b) opis tabel, indexów, itp (dobrze jest opisywać już na etapie projektowania bazy pola, których przeznaczenie może nie być jasne) - wiele programów potrafi takie dane wygenerować samemu, np tu masz przykład z programu EMS SQL Menager dla Postgres (darmowy)
c) słowny opis rzeczy, które mogą być niejasne
c) słowny opis rzeczy, które mogą być niejasne
No właśnie o to jak taki słowny opis powinien wyglądać- czy jest jakaś konwencja? Czy może panuje wolna amerykanka.
Czy to poniżej nadaje się jako dodatek do diagramu związków encji?
tabela formy_studiow,
Zawiera różne rodzaje form studiów.
id_fstu:integer klucz główny formy(stacjonarne, dzienne etc.)
nazwa:varchar(50) nazwa formy
symbol:varchar(2) skrótowy symbol
tabela lista_kierunkow
Zawiera różne rodzaje kierunków.
id_lk:integer klucz główny kierunku
nazwa:varchar(400) nazwa kierunku (Matematyka, Informatyka)
opis:varchar(1000) opis kierunku
symbol:varchar(4) skrótowy symbol
tabela typy_studiow
Zawiera różne typy studiów.
id_ts:integer klucz główny typu
nazwa:varchar(50) nazwa typu (magisterskie etc.)
lata:integer informacja o tym ile trwaja studia danego typu
symbol:varchar(2) skrótowa nazwa
tabela kierunki
Zawiera informacje o kierunkach jakie istnieją na wydziale
id_k:integer klucz główny kierunku
typ:integer referencja do tabeli typy_kierunkow
forma:integer referencja do tabeli formy_studiow
kierunek:integer referencja do tabeli lista_kierunkow
miejsc:integer ile jest miejsc na danym kierunku
od:date data rozpoczęcia studiów
co do opisu to krótkie zdanie. Nie musisz opisywać wsyzstkich pól - info o większości pól powinno wynikać z ich nazwy i typu. Ja bym zmienił zamiast "Zawiera różne rodzaje form studiów." na "Rodzaje form studiów." - krótko zwięźle i na temat. Bardzo drażni mnie w tych opisach słówko rózne :) - wiadomo przecież, że nie będzie się tam tych samych wpisywać :). Tak samo zamiast "ile jest miejsc na danym kierunku" to "Ilość miejsc na danym kierunku". Poza tym zamiast pisać klucz główny to lepiej postawić jakiś znaczek, np # czy * i zamiast pisać tabela nazwa_tabeli to po prostu oddzielić ją od pól np ----
formy_studiow
Zawiera różne rodzaje form studiów.
- id_fstu:integer
nazwa:varchar(50) nazwa formy
Ogólnie jak będziesz to robił w jakimkolwiek programie do projektowania BD to tam masz specjalne pole typu opis dla tabeli raz pola. Możesz z tego potem wyeksportować (w formie takiej dokumentacji) całą bazę i opisy będziesz miał już ładnie rozmieszczone
słówko rózne :) - wiadomo przecież, że nie będzie się tam tych samych wpisywać :).
Cikawa i trafna uwaga- nie pomyślałem o tym.
Ogólnie jak będziesz to robił w jakimkolwiek programie do projektowania BD to tam masz specjalne pole typu opis dla tabeli raz pola. Możesz z tego potem wyeksportować (w formie takiej dokumentacji) całą bazę i opisy będziesz miał już ładnie rozmieszczone
Niestety- robię coś w stylu reverse engineering...
Dziękuję bardzo za wskazówki- o takie właśnie mi chodziło :)
Mam jeszcze pytanie trochę_z_innej_beczki: Znasz jakieś narzędzie, które na podstawie bazy zrobi mi diagram erd (może być bez związków, same encje). Bo próbowałem kilku i:
DB Designer 4 -swietny program, radzi sobie RE, ale jak chcę dodać relacje, to automatycznie dodaje pola FK, które nazywają się tak jak PK w tabeli którą chcę 'dowiązać' (chodzi mi o graficzne przedstawienie) :/ a te które w tej tabeli są faktycznie FK nazywają się niestety inczej.
M$ Visio'03 -zawiesza sie na amen przy lączeniu z bazą
M$ Visio'07-wprawdzie się nie zawiesza, ale wywala niezrozumiałe błędy (typu: []), ale to beta, więc wybaczam
M$ VisioModeler - szkoda gadać (chyba z tamtego wieku jeszcze :P)
Visual Paradigm - nie umie RE
Objecteering - j.w
W sumie tak długo szukałem narzędzia, że zastanawiam się czy nie narysowałbym diagramu w tym czasie w Paincie [rotfl] (26 tabel :|)
id02009 napisał(a)
Mam jeszcze pytanie trochę_z_innej_beczki: Znasz jakieś narzędzie, które na podstawie bazy zrobi mi diagram erd (może być bez związków, same encje).
zobacz np. EMS
Bo próbowałem kilku i:
DB Designer 4 -swietny program, radzi sobie RE, ale jak chcę dodać relacje, to automatycznie dodaje pola FK, które nazywają się tak jak PK w tabeli którą chcę 'dowiązać' (chodzi mi o graficzne przedstawienie) :/ a te które w tej tabeli są faktycznie FK nazywają się niestety inczej.
bo tak powinno się nazywaćóla FK - wtedy od razu wiadomo do jakiej tabeli i jakiego pola sę odnoszą :). Jet to bardzo dobra praktyka
BTW jaka baza?
bo tak powinno się nazywać FK - wtedy od razu wiadomo do jakiej tabeli i jakiego pola sę odnoszą :). Jet to bardzo dobra praktyka
No wiem, tylko nie projektowałem tej bazy sam i ostateczny głos w sprawie nazw kluczy miał ktoś inny :| więc teraz się męczę.
BTW jaka baza?
Nie wiem dokładnie co chcesz o niej wiedzieć. Jest to baza w której są informacje o przydziałach, siatkach i zajęciach na pewnym instytucie ;).
Dzięki za linka, wygląda że znajdę tam czego potrzebuję.
dokładnie to chodzi mi jaki silnik BD - MySQL, MSSQL, FireBird, Postgres. Jak chcesz robić reverse engine to z bazy, która już jest chyba :>
tak.
MySQL, tabele są na engine InnoDB.
to EMS sobie z tym poradzi
No, właśnie się nim bawię- jest boski. Tokładnie to czego potrzebowałem :)
dzięki za info