Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision Poprzednia wersja Nowa wersja | Poprzednia wersja Ostatnia wersja Both sides next revision | ||
baza_propozycje [2015/01/16 11:55] t.zoltak [Scalenie tablic przechowujących wartości wskaźników] |
baza_propozycje [2015/01/30 10:45] zozlak [Scalenie tablic przechowujących wartości wskaźników] |
||
---|---|---|---|
Linia 1: | Linia 1: | ||
===== Propozycje zmian w strukturze bazy danych ===== | ===== Propozycje zmian w strukturze bazy danych ===== | ||
- | ==== Scalenie tablic przechowujących wartości wskaźników ==== | ||
- | |||
- | Scalenie tablic //wartosci_wskaznikow_zrownywanie, wartosci_wskaznikow_gimnazjum, wartosci_wskaznikow_matura// w jedną tablicę wraz z dodaniem klucza obcego //{id_szkoly, rok}// do tablicy //szkoly_dane// | ||
- | * wszystkie wskaźniki są do siebie bardzo podobne i korzystanie z osobnych tablic jest zwyczajnie niewygodne; | ||
- | * do rozróżniania wskaźników i tak służy //id_wskaznika// i wydzielanie oddzielnych tablic jest sztuczne; | ||
- | * biorąc pod uwagę rozmiary innych tablic w bazie trochę pustych kolumn (niewykorzystywanych akurat przez ten rodzaj wskaźników) nikogo nie zaboli; | ||
- | * cały czas mamy mechanizmy kontroli nad koniecznością wypełniania kolumn: | ||
- | * klauzule //check//; | ||
- | * obiektowość - zdefiniowanie tablic dziedziczących po wspólnej tablicy //wartosci_wskaznikow//; | ||
- | * brak klucza {id_szkoly, rok} bardzo obniża wydajność zapytań ze stron WWW generujących wskaźniki, a skoro i tak realizowany jest tam zawsze identyczny algorytm (dobierz najstarszy rok z okresu obejmowanego przez wartość wskaźnika), to czemu by tego nie zmaterializować; dodatkowo wzmocni to kontrolę spójności bazy. | ||
- | |||
- | Uwaga: trzeba się zastanowić, jak rozwiązać przy tym kwestię szkół, które w danym roku nie mają absolwentów, a więc w chwili obecnej również wpisu w tablicy //szkoly_dane//, ale mają wyliczone wartości wskaźnika EWD dla trzylatki kończącej się danym rokiem.\\ | ||
- | Rozwiązanie - dodać do tablicy kolumnę "rok" odnoszącą się do kolumny "rok" tablicy "szkoly_dane". | ||
- | |||
- | Kolumny, które należy zachować z tablic ze wskaźnikami EWD: | ||
- | * 'id_wskaznika', 'rok_do', 'id_szkoly'; | ||
- | * 'sr_wynik_egz' może przejść na 'srednia'; | ||
- | * 'bs_sr_wynik_egz' może przejść na 'bs'; | ||
- | * 'ewd', 'bs_ewd', 'trend_ewd', 'bs_trend_ewd', 'korelacja', 'kategoria'. | ||
- | |||
- | Kolumny z liczbą uczniów wypadają do tablicy z liczba_zdajacych. Przy tym w tablicy 'sl_przedmioty' powinna się pojawić kolumna opisująca "nie przedmioty" (przypadek spr., egz. gimn., wpisów przechowujących liczbę wszystkich uczniów w szkole). | ||
- | |||
- | Wartości z kolumn 'lu_sr_wynik_egz', lu_wydl_(...)' mogą zostać zgubione przy migracji. | ||