[ zorrome @ 05.06.2005. 14:57 ] @
| Radim bazu Posuđivanje kazeta za vježbe na faksu. Sastoji se od tabela Korisnik, Kazete, Posudjene kazete i ArhivskaTablica. Znači kad netko posudi kazetu on se upiše u tablicu Posudjene Kazete. Tablica Arhiva mi "visi", odnosno koju tablicu da s njom povežem i koji bi se podaci trebali u njoj nalaziti. |
[ ivan jeremic @ 06.06.2005. 14:27 ] @
To je zato sto ti ona ne treba ako imas neke datume u pozajmljenim kasetama :))
Ali ako je situacija takva da moras negde da je umetnes onda mozes u nju da ubacis podatke kada se kaseta vrati a obrises ih iz PozajmljeKazete. U tom slucaju su ti relacije iste kao i u pozajmljenim kasetama .. one 2 tabele (zaboravio imena) povezujes i sa arhivom na isti nacin kao i sa pozajmljenim kasetama.
[ Riste Pejov @ 08.06.2005. 12:33 ] @
A sta ce ti uopste tabela arhiva? U tabeli posudjene kasete samo dodaj flag jeli kaseta vracena ili ne :) A momentalno posudjene kasete da dobijes kao
SELECT * FROM posudjene WHERE status = 1 ... a kad bi status bio 0 onda bi to bila nekada posudjena kaseta.
[ Zidar @ 08.06.2005. 14:33 ] @
Mozda ti cak ni Status Flag ne treba. Ako u tabeli PozajmljeneKazete imas polja DatumUzimanja i DatumVracanja, moze da DatumVracanja bude NULL sve dok se kaseta ne vrati. Kad se vrati, upises DatumVracanja i kveri koji je Riste predlozio moze da izgleda i ovako:
SELECT * FROM posudjene WHERE DatumVracanja IS NOT NULL
Ovo zato sto obicno nije dovoljno znati da li je kaseta vracena, nego i kada je vracena. Ako imas i Flag i DatumVracanja, nije dobro, narusava se neko tamo pravilo normalizacije (svako polje u tabeli mora da zavisi iskljucivo od PK i ni od cega drugog) Ako imas i Flag i DatumVracanja, ta dva polja zavise jedno od drugog. DatmVracanja moze da bude NOT NULL ako i samo ako Flag=1. Da li radis sa Flagom ili sa Datumom vracanja, zavisi od mnogih drugih stvari, koje Riste i ja ne vidimo u ovom momentu, pa se ne moze reci bolje je ovo ili ono resenje (toi nije cilj diskusije, nego da se malo 'prosire vidici')
Medjutim, ako profesor trazi Archive table, onda moras da je uradis i poslusaj Ivana.
Ovo sto Riste i ja pricamo vise 'savet iz prakse'
:-)
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.