Pogledaj odgovor
http://www.elitesecurity.org/t443328-1#3033967 gde ti je sve objasnjeno kako treba da izgleda baza i dat ti je primer.
Ti treba da definises grupe lekova na posebnom mestu a onda kada unosis lek da ti se prikaze lista grupe lekova i da izaberes a ne da unosis.
Recimo kada radis telefonski imenik gde imas ime i prezime, grad i broj telefona.
Da li je bolje da imas listu gradova pa da izaberes grad iz liste nego da svaki put kucas grad.
I jedno ukucas Beograd, drugi put Bg, treci put pogresis pa ukucas Begrad, pa neko ukuca Belgrade ....
I sada ti treba da pretrazis sve brojeve u Beogradu, nema sanse. Da li ces znati da li da trazis Belgrade, Bg, Beogrd i 100 kombinacija skracenica i gresaka?
Umesto da u posebnoj tabeli imas Beograd sa id 1 i on kada unosi novi podatak u imeni izabere iz liste Beograd a ti znas da je to id 1 i to stavis u imenik
Pera Peric, 011-xxxxxxxx, Ulica, 1 (ovo ti je id za beograd).
I onda kada pretrazujes brojeve za Beograd pretrazujes tamo gde je id_mesta = 1 a ne BG ili bg ili Beograd ili Belgrade .....
I tu nema veze da li si pogresno uneo. Jer kada ispravis id ce ostati i dalje 1 i u tabeli brojeva i dalje id_mesta 1.
To se zove normalizacija baze.
Ukratko. Sve sto ti se ponavlja u jednoj tabeli kao tekst to mozes da stavis u drugu tabelu bez ponavljanja a da u prvoj tabeli stavis id iz druge tabele.
U neku krajnost mogao bi i ulice da stavis u posebnu tabelu ako ima potrebe.
Onda bi ovaj primer izgledao ovako:
1. Tabela Mesta:
mesto_id, naziv (npr vrednosti: 1, Beograd | 2, Novi Sad ....)
2. Tabela Ulice:
ulica_id, mesto_id, naziv (npr vrednost: 6, 1, Karadjordjeva)
Ovo znaci da ulica sa ulica_id 6 se nalazi u Beogradu jer ima mesto_id=1 a to vidis u tabeli mesta da je Beograd, da je mesto_id=2 to bi znacilo da se ulica nalazi u Novom Sadu.
3. Imenik
id, ime_prezime, broj, ulica_id (npr vrednost: 1, Pera Peric, xxxxx, 6)
Sto znaci da prvi red u imeniku je Pera Peric sa brojem telefona xxxxx a ulica_id mu je 6.
Odes u ulice tabelu i pogledas koje polje ima ulica_id=6 a to je ulica Karadjordjeva i u toj tabeli vidis da ta ulica ima mesto_id=1 i odes i pogledas da u tabeli mesta gde je mesto_id = 1 i vidis da je to Beograd.
Zakljucis da je to Pera Peric sa xxxx brojem telefona iz Karadjordjeve u Beogradu.
Ajd javi se kada skontas sta sam ti pricao.
Za pocetak mozes da napravis ove 3 tabele sa vrednostima koje sam ti rekao i onda daj ovde sta ti nije jasno.
[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]