Professional Documents
Culture Documents
Monog DB
Monog DB
2
Problem N:M veza. Jedno resenje je da imamo posebne entitete
koji ce nam sluziti samo za povezivanje kao kod relacionih baza
podataka. Drugo resenje je da ugradimo kod svakog, odgovarajuci
niz referenci ili da se odlucimo za dupliranje podataka. Ne postoji
najbolje resenje, sve zavisi od toga kako koristimo podatke.
Podesavanje MongoDB-a
Kada skinemo MonogDB, i raspakujemo ga, unutar bin foldera
imamo razlicite bat i exe fajlove, za nas je bitan mongod i mongo:
3
Pre nego sto pokrenemo bazu, moramo da kreiramo folder u kome
ce se smestati podaci. Pa tako kreiramo folder “db”, a unutrar njega
jos jedan folder sa nazivom “data” koji je inicijalno prazan, ali ce se
popuniti kada pokrenmo bazu.
4
dbpath “<uneti putanju do foldera “data” koji smo prethodno
napravili>” ”
Rezultat ovoga je inicijalizacija data foldera.
Strelica pokazuje na kom portu se nalazi mongoDB
Ako zelimo da unosimo komande za bazu, pozicioniramo se isto na
bin, i unesemo komandu “mongo”, gde se dobija CLI gde mozemo
da unosimo komande.
5
Komadnom “user preduzece” pozicioniramo se na tu bazu, i
mozemo da radimo operacije u njoj
Komadnom “show coolections” prikazuju se sve kolekcije unutar
baze
Da ne bi unutar pozcionoirane baze, unosili njeno puno ima,
mozemo da pisemo db.<operacija>
Da bi se lepo videli podaci kao json, umesto ove navedene operacije
db.radnici.find({ }), mozemo da iskoristimo:
db.radnici.find({ }).pretty()
6
Razlog ovog je posledica tehnologije koju koristimo, da smo recimo
koristili NodeJS, mi bismo slali nesto sto nalikuje BISON objektu, i to
se ne bi prikazivalo da je null. Ali posto radimo u .NET odnsono sa
klasama, gde je struktura fiksna i kada uradimo serijalizaciju neke
klase, svi porperty unutar klase za mongo postoje. Takodje ako
recimo dodamo neki property u nekoj klasi, to nece promeniti
situaciju u vec upisanim podacima, samo ce novi podaci imati taj
property vise, znaci fleksibilna struktura.