[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[tietokannat] Re: Relaatioista




>   Access herjaa, kun yritän luoda relaatiota Kirja-taulusta
>   Lainaa-tauluun, jossa on kolme perusavainta(KirjaId, Lainauspvm,
>   Lainaajan_sotu). Jos otan pois muut avaimet, niin onnistuu kyllä, mutta
>   eikö niidenkin pitäisi olla perusavaimia?

Nyt taitavat käsitteet olla hieman sekaisin. Yrittänet siis luoda
Kirja-relaatiosta (taulu on sama kuin relaatio) viite-eheysmääritystä
Lainaa-relaatioon? Jotenkin veikkaisin, että tuo pitäisi olla juuri
toistepäin eli Lainaa-relaation KirjaID-kentästä määrittelet viite-eheyden
Kirja-relaatioon. Helpottaisi jos olisit kertonut mikä on accessin antama
virheilmoitus.

Lainaa-relaatiossa sinulla lienee yhdistetty avain (perusavain), joka
muodostuu kentistä KirjaID, Lainauspvm ja Lainaajan_sotu. Access ei
muistaakseni osaa viite-eheysmäärityksissä viitata kuin perusavaimiin eli
jos välttämättä jostakin haluaisi viitata tähän lainaa-relaatioon niin
viittauksessa pitäisi käyttää kaikkia kolmea kenttää. Tämä tietystikin
hukkaa ihan turhaan tilaa. Tällaisessa tapauksessa kannattaisikin tauluun
luoda yksi uusi kenttä esim. lainausID, joka toimisi taulun perusavaimena
ja siihen olisi helpompi viitata. Nykyinen perusavain korvattaisiin
uniikilla indeksillä. Tämä on siis vain pohdintaa eikä tässä
nimenomaisessa tapauksessa tarvitse lisätä kyseistä kenttää.

-- 
Tommi Lahtonen, tommi.j.lahtonen@jyu.fi, <URL: http://www.iki.fi/hazor/>

Stop committing useless mistakes.  Make your next mistake count!

-- send "unsubscribe tietokannat" to majordomo@cc.jyu.fi to unsubscribe ---