From 956d610342e4b7e1a8f9ffa970ad1c777f4ab295 Mon Sep 17 00:00:00 2001 From: Joeli Hokkanen Date: Thu, 11 Apr 2019 10:58:07 +0300 Subject: [PATCH] Update vaatimusmaarittely.md --- vaatimusmaarittely.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/vaatimusmaarittely.md b/vaatimusmaarittely.md index d0a6700..c4ecf33 100644 --- a/vaatimusmaarittely.md +++ b/vaatimusmaarittely.md @@ -26,6 +26,8 @@ Olettamuksia arkkitehtuurista: - Kaupunki omistaa areenan - Ottelu pelataan yhdellä areenalla koti- ja vierasjoukkueen kesken - Ottelusta kirjataan ottelutapahtumia, jotka voivat olla ainakin maaleja, jäähyjä, rangaistuslaukauksia, aikalisiä +- Maalilla voi yksi syöttäjä, mutta ei sen enempää +- Maali-taululle piti määritellä myös maalin tehnyt joukkue, koska muuten omaan maaliin menevä kiekko tulisi väärän joukkueen maaliksi Alustava ER-kaavio tietokannasta: @@ -79,7 +81,7 @@ Googlesta ja StackOverflow'sta aikani luettuani, kokeilin pariakin eri lähestym - Kokeilin määrittää kaikki muut vierasavaimet INSERTin aikana erikseen NULL-arvolle - Vielä paria erilaista constraintia ja muuta määrettä taululle -Mikään ei auttanut vaikka tämän piti toimia hyvin. Olin jo varma, että Student-palveimen MySQL on liian vanha ja buginen eikä koodissani mitään vikaa ole. Sitten tajusin vielä kokeilla, että jätän FK-määreet näille ottelutapahtuman eri id:ille, mutta teen taululle erillisen oman id:n primary keyksi, näiden neljän fuusion sijaan. Tämä tuntui vihdoin toimivan, ja tietokannan skeema oli vihdoin valmis. +Mikään ei auttanut vaikka tämän piti toimia hyvin. Olin jo varma, että Student-palveimen MySQL on liian vanha ja buginen eikä koodissani mitään vikaa ole. Sitten tajusin vielä kokeilla, että jätän FK-määreet näille ottelutapahtuman eri id:ille, mutta teen taululle erillisen oman id:n primary keyksi, näiden neljän fuusion sijaan. Tämä tuntui vihdoin toimivan, ja tietokannan skeema oli vihdoin valmis. Lopullinen ongelma oli siis siinä, että primary keyssä ei saa olla NULL-kenttiä, vaikka INSERT-rivin virhe tulikin foreign key constraintista. ![ER final](er_final.png) -- GitLab