Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

pomoc oko organiziranja baze

[es] :: Baze podataka :: pomoc oko organiziranja baze

[ Pregleda: 2072 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

--daniel--

Član broj: 82022
Poruke: 48
*.dsl.optinet.hr.



Profil

icon pomoc oko organiziranja baze14.01.2009. u 20:53 - pre 186 meseci
eo trebam odprilike napraviti ovo sa bazama pa malu pomoc trazim ako je moguce jer sam novi na ovom podrucju: npr. imam glavnog admina koji dodjeljuje moderatore moderator je u mogcunosti stvarati nove grupe, te prima zahtjeve od obicnih korisnika za ulazak u grupu te ih moze dodati ili odbiti.. e sad kako da bazu organiziram, ja sam to ovako zamislio: tablica moderatora, tablica korisnika(mora biti veza sa grupama), tablica određene grupe koja mora biti povezana sa korisnicima i moderatorom zatim moderator uvijek moze stvoriti novu tablicu grupe, sad mi malo jos pomognite kako da to povezem i organiziram...
Tko radi taj i griješ, a tko ne radi već pravi jednu pogrešku!!
 
Odgovor na temu

Crtani
Dejan Savic
Beograd

Član broj: 95930
Poruke: 46
*.ADSL.neobee.net.

Sajt: www.klikeri.net


Profil

icon Re: pomoc oko organiziranja baze19.01.2009. u 23:44 - pre 185 meseci
Evo kako bi mogao da razmisljas:
Prvo uoci objekte posmatranja (entitete, njih cemo smestiti u tabele) i njihove osobine (to ce biti kolone u tabelama).
Ja ovde uocavam da postoje GRUPE, KORISNICI i MODERATORI za pocetak (ja bih inace jos uopstio stvar pa bih i moderatore smatrao samo jednom posebnom vrstom korisnika, ali da ne komplikujemo sad).
Sto se tice osobina, svaka grupa ima svoj naziv, a korisnici i moderatori imaju svoja imena, telefone, datume rodjenja itd.
Mozemo reci i da je jedna od osobina svake grupe to ko je njen moderator, i ko su njeni clanovi, ali tu vec prelazimo u oblast odnosa izmedju tabela.
A odnosi bi ovde mogli biti prilicno komplikovani:
- Jedan moderator moze da moderira vise grupa. A u jednoj grupi moze biti vise moderatora. (veza N:N)
- U jednoj grupi ima vise korisnika. A isti korisnik moze da bude u vise grupa. (veza N:N)
(uzeo sam najopstiji, najtezi slucaj)
Za oba ova odnosa treba ti po jedna tabela u kojoj ce pisati 1) ko je moderator u kojoj grupi 2) koji clan je u kojoj grupi.
Sve u svemu, model bi izgledao ovako:

GRUPE
--------
grupaID (primarni kljuc)
naziv

KORISNICI
------------
korisnikID (primarni kljuc)
ime
telefon
...

MODERATORI
--------------
moderaotrID (primarni kljuc)
ime
telefon
...

MODERIRANJE (Primarni kljuc ove tabele sastoji se od oba ova polja)
--------------
moderator (strani kljuc, odgovara jednom od moderatora iz tabele MODERATORI, mora biti istog tipa kao moderatorID)
grupa (strani kljuc, odgovara jednoj od grupa u tabeli GRUPE, tj. grupaID)




CLANSTVO (Primarni kljuc ove tabele sastoji se od oba ova polja)
-------------
korisnik (strani kljuc -> korisnikID )
grupa (strani kljuc -> grupaID )
datum uclanjenja (mozda)


Savetujem ti da odes na http://casovi.klikeri.net i procitas neke od clanaka koji se ticu relacija tj. veza izmedju tabela.
Ako zaista zelis ovo da shvatis napravicu ti primer u Access-u.

 
Odgovor na temu

--daniel--

Član broj: 82022
Poruke: 48
*.dsl.optinet.hr.



Profil

icon Re: pomoc oko organiziranja baze20.01.2009. u 14:00 - pre 185 meseci
hvala ti puno na odgovoru, prije nego sam vidio tvoj post sam napravio nesto ovako:

MODERATORI
--------------
ModeratorID (primary)
ime
...

KORISNICI
--------------
KorisnikID (primary)
ime
...

GRUPE
--------------
GrupaID (primary)
Naziv
...

ČLAN (grupe)
--------------
ČlanID (primary)
KorisnikID (foreign key od korisnika)
GrupaID (foreign key od grupe)
datum

ZAHTJEVI (od strane korisnika za ulazak u grupu)
--------------
ZahtjevID (primary)
KorisnikID (foreign key od korisnika)
GrupaID (foreign key od grupe)
ModeratorID (foreign key od moderatora)
datum

MODERIRANJE (ovo sam ubacio od tebe :P jel prvotno sam mislio samo jedan moderator za jednu grupu )
--------------
ModeratorID (foreign key)
GrupaID (foreign key)

eto mozes ovo jos samo da prokomentiras, trebali nesto promjeniti,to bi bilo, kako si ti napisao u prethodnom postu i kako sam ja odprilike zamislio i hvala jos jednom ;)
Tko radi taj i griješ, a tko ne radi već pravi jednu pogrešku!!
 
Odgovor na temu

Crtani
Dejan Savic
Beograd

Član broj: 95930
Poruke: 46
*.ADSL.neobee.net.

Sajt: www.klikeri.net


Profil

icon Re: pomoc oko organiziranja baze20.01.2009. u 16:00 - pre 185 meseci
E ovo je vec mnogo visi nivo razumevanja nego kada si napisao:
"zatim moderator uvijek moze stvoriti novu tablicu grupe".

U tabeli Zahtevi mozes da uvedes polja u kojima ce se beleziti da li je i kako je resen zahtev.
Onda treba da razmisljas i o automatskom azuriranju tabele clanstvo na osnovu pozitivno resenih zahteva.

Kad smo vec stigli do ovde, razmisli i o tome da jedan isti covek moze biti moderator u jednoj ili vise grupa, i obican clan u jednoj ili vise grupa. Zato bi valjalo imati jednu tabelu KORISNICI, i novu tabelu ULOGE, i onda u grupi CLANSTVO dodeljivati svakom korisniku odredjenu ulogu za grupu u kojoj je.
CLANSTVO
-----------
clanID
korisnik -> KORISNICI.korisnikID
grupa -> GRUPE.grupaID
uloga -> ULOGE.ulogaID
...


ULOGE
---------
ulogaID
opis
...

Tako ce Pera u grupi Alkoholizam moci da bude Moderator, a isti taj Pera u grupi Padobranstvo ce biti obican clan, itd.
Dakle, grupa moderatori vise ne postoji. I otvara ti se mogucnost da uvodis nove uloge, npr. Pocasni clan i slicno...

E sad. Izbor primarnog kljuca u tabeli CLANSTVO je nauka za sebe.
Tvoja ideja je vestacki kljuc, i to nije pogresno. Ali onda se moze desiti da nas Pera bude pet puta Moderator u istoj grupi, jer je zahvaljujuci ovakvom kljucu svaki red vestacki jedinstven, bez obzira sto su svi drugi podaci identicni.

Drugi nacin je da napravis slozen, prirodni kljuc sacinjen od tri strana kljuca (korisnik+grupa+uloga). Time ces obezbediti jedinstvenost ove kombinacije, pa Pera ne moze biti pet puta moderator u istoj grupi, ali moze biti moderator u vise razlicitih grupa, ali isto tako moze biti u jednoj istoj grupi i clan, i pocasni clan i moderator. Ja mislim da je to zapravo ono sto je idealno kada je opisivanje realne zivotne situacije u pitanju. Ali moras voditi racuna kada pokusavas da prebrojis koliko jedna grupa zaista ima clanova.

Treci slucaj je ako zelis da sprecis da neko ima u istoj grupi vise uloga. Onda kljuc treba da bude korisnik+grupa. Tada ce pera u jednoj grupi moci da igra samo jednu ulogu, ali ce moci da bude istovremeno u vise grupa.

Pitanje je samo sta tebi treba.

Jos jedna jezicko/logicka sitnica.
Iako to ne utice na tacnost modela, nazivi tabela su najcesce u mnozini, jer tabela predstavlja skup entiteta. Npr. jedan red je jedan Korisnik, a cela tabela su Korisnici.
Drugo, kada vidis tabelu CLAN, ocekujes da su unutra podaci o clanovima, a to ovde nije slucaj, jer ta tabela opisuje ODNOS a ne konkretan objekat iz realnog sveta, pa i njen naziv treba da odgovara tome sto opisuje. Ova nasa tabela ne opisuje clanove, nego ko je gde clan, odnosno opisuje odnos koji bi se na srpskom/hrvatskom najpribliznije nazvao CLANSTVO. Zato sam je ja tako nazvao. Ali kao sto rekoh, to ne utice na tacnost modela.


Veoma me zanima kakava je krajnja namena ovog modela? Neki domaci, seminarski, ili neki realan projekat?
Pozdrav
 
Odgovor na temu

--daniel--

Član broj: 82022
Poruke: 48
*.dsl.optinet.hr.



Profil

icon Re: pomoc oko organiziranja baze20.01.2009. u 23:21 - pre 185 meseci
ovaj dodatak sto si napisao je vrlo zanimljiv ali u mom slucaju trenutno nije nepotreban jer da budem iskren malo sam u stisci s vremenom, ali zasigurno ce mi pomoci u daljnjim stvarima, a radim na projektu s kojim cu na smotru ici vezano u skolu a usput onda ucim neke stvari.. jesi razmisljao da pises neke tutoriale jer dobro ti ide objasnjavanje :)
Tko radi taj i griješ, a tko ne radi već pravi jednu pogrešku!!
 
Odgovor na temu

Crtani
Dejan Savic
Beograd

Član broj: 95930
Poruke: 46
*.ADSL.neobee.net.

Sajt: www.klikeri.net


Profil

icon Re: pomoc oko organiziranja baze20.01.2009. u 23:55 - pre 185 meseci
Citat:
jesi razmisljao da pises neke tutoriale jer dobro ti ide objasnjavanje :)


Nesto slicno. Predajem informatiku u srednjoj skoli :) pa sam djacima pravio sajt casovi.klikeri.net, ima tamo par stvari koje lice na tutoriale.
Pozdrav




 
Odgovor na temu

[es] :: Baze podataka :: pomoc oko organiziranja baze

[ Pregleda: 2072 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.