Bolje da pametujes (mislis svojom glavom) nego da slepo sledis knjigu

Diploma koju si zasluzeno stekao, magistratura i uskoro doktorat, daju ti za pravo i obavezuju te da kriticki posmatras sve sto procitas i vidis. Pa makar bilo i od profesora po cijoj knjizi si ucio.
"Ako treba definisati indeks nad atributom ili grupom atributa koji ne identifikuju jedinstveno primerke entiteta definiše se tzv. Inversion Entry (IEn) indeks." Da li iz ovoga treba da zakljucim da je inverzni kljuc u stvari indeks po non-unique kombinaciji kolona? I to zato sto su tvorci ERWIN-a odlucili da tako nazovu ono sto se zove INDEX u standardnom SQL-u. I pri tom ga nisu nazvali inverzni kljuc nego lepo pise "Inversion Entry Index".
Najlepse ide na kraju: "Atributi: 'Ime' i 'Prezime' definisani su kao inverzni atributi, tj. kao IE ključ, jer nemaju definisanu jednoznačnost (može se dogoditi da više zaposlenih ima isto 'Ime' i Prezime')." Tu se uvodi pojam "inverzni kljuc" iako nije definisan ranije nigde, osim ako se ovo ne smatra definicijom inverznog kljuca jer nemaju definisanu jednoznačnost. Ako je tako, bilo koji skup atributa koji ne odredjue nas entitet jednoznacno jeste u stvari "inverzni kljuc". A takvih skupova moze biti mnogo. I sad, gle, "inverzni atributi". Inverzni u odnosu na sta? A koji su to drugi atrbuti, koji nisu inverzni? Mogu li da zakljucim da svaki skup atributa koji nije AK jeste inverzni kljuc? Sta ako neki atribut nadjemo u AK ali ga nadjemo i u inverznom kljucu? Da li je i to inverzan atribut, ili je nekad inverzan a nekad nije? Zasto su na slici Ime i Prezime inverzni atributi, a Plata, Stimulacija i DatumZaposlenja nisu? Alternativni kljucevi logicki postoje i bez da ih mi uocimo ili deklarisemo, oni su jednostavno tu. Za inverzne, nije mi bas najjasnije.
I cemu uopste ta definicija? Inverizja je ozbiljan koncept, ne treba zbunjivati narod bez preke potrebe. To je za politicare, mi smo ipak tehnicka lica.
Ima jedan neprijatan problem u primeru sa JMBG. JMBGG mora biti jedinstven, ali nije obavezan. To je OK, takva je realnost. Medjutim, ako nije obavezan, kako onda JMBG moze odredjuje one redove gde ne postoji? Ako JMBG nije obavezan, ne moze biti AK, makar bio jedinstven tamo gde postoji. Seti se, svaki AK moze da se proglasi za PK. A JMBG ne moze da bude PK posto dozvoljava NULL vrednosti.
Ceo paragraf je mogao da se napise krace i jasnije, na primer: "Nad bilo kojom kombinacijom atributa moze se definisati INDEX. Ako je kombinacija atributa takva da jenoznacno odredjue entitet, tu kombinaciju nazivamo Alternativni Kljuc. Od svih alternativnih kljuceva biramo jedan i proglasavamo ga za Primarni Kljuc." Cak i ovako, paragraf je problematican. Indexi i kljucevi nisu ista vrsta koncepta. Kljucevi su deo relacione teorije a indeksi deo fizickog mehanizma za pristup podacima.
Profesoru svaka cast, ali ne vidim svrhu uvidjenja u igru jos jedne definicije, osim da se zavitlavaju studenti na ispitu i da knjiga zvuci naucnije. Ako, na primer, student uzme da cita druge knjige, na primer C. J. Date: An Introduction to Database Systems, tamo se ne spominju inverzni atributi i inverzni kljucevi. Indeksi se ne pominju u glavnoj knjizi, nego u Appendixu, gde se objasnjava fizicki mehanizam indeksiranja. Covek dodje na ispit i ne zna sta je inverzni atribut i inverzni kljuc. I padne. (nadam se da nije tako)
Covek procita C. J. Date-a i padne na ispitu jer ne zna za inverzne atribute. Bas bi bilo bez veze.