Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wyniki matury w bazie danych. jak?
Forum PHP.pl > Forum > Bazy danych > MySQL
szpakoo
musze w bazie zrobić tabele z wynikami matury. trzeba uwzględnić ze to jest albo nowa, stara albo miedzynarodowa matura.

jesli jest stara matura to będzie 4 albo 5 wpisów(ocen) (ustny j. obcy tylko w LO)

jesli nowa matura to będzie to trzeba 11 wpisów(ocen) (bo w pierwszym roku nowej matury mozna było zdawać i poziom podstawowy i rozszerzony albo tylko podstawowy)

matura międzynarodowa (6 ocen w skali od 1 do 7)

każda ocena jest z jakiegoś przedmiotu i to z jakiego przedmiotu jest ta ocena jest mi potrzebne.

Wymyśliłem tak:

Przedmioty w jednej tabelce a oceny w drugiej, tylko że w ten sposób pozostanie wiele pustych pól w tabeli z ocenami.
No i tabela z ocenami bedzie maiała duuuużo kluczy obcych z tabeli przedmiot.

Jak to rozwiązać?
starcode
Hmm... sprawa wydaje mi się dosc prosta

Tabela 'główna' zawierająca wszystkie matury, każda ma unikalny ID, w polu `typ` wartość 0,1,2 określająca jaka to matura:
  1. CREATE TABLE matury(
  2. id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
  3. typ char(1),
  4. nazwa varchar(64),
  5. -- dalej pola tabeli
  6. );


Tabela zwierająca nazwy przedmiotów, każdy ma unikalny ID
  1. CREATE TABLE przedmioty(
  2. id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
  3. nazwa varchar(64),
  4. );


Tabela łącząca przedmioty do ocen, a te do matur.
  1. CREATE TABLE oceny_matury(
  2. id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
  3. id_matury int,
  4. id_oceny int,
  5. ocena int
  6. );


I koniec, wszystko gra i buczy smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.