CRUD operacije za MongoDB u PHP -u

Sadržaj
Web aplikacije općenito se usredotočuju na četiri osnovne operacije koje trebaju izvesti protiv svog sustava postojanosti ili Baze podataka, te se operacije smatraju ključnim pri učenju razvoja za ovo okruženje, na koje se pozivamo Stvaranje, čitanje, ažuriranje i brisanje također poznat kao ZDRAVO za akronim na engleskom.
MongoDB hvala svom vozaču za PHP, omogućuje nam da ove četiri operacije izvedemo na vrlo jednostavan način, međutim, budući da smo upravitelj Nerelacijske baze podataka, ne možemo pasti u pogrešku tretiranja svih stvari kao da koristimo relacijski sustav kao što je MySQL ili PostgreSQL.
ZahtjeviDa bismo slijedili ovaj vodič, moramo imati verziju MongoDB u našem testnom okruženju, osim što smo preuzeli i aktivirali odgovarajući upravljački program za PHP, za više informacija o tome kako ispuniti ove zahtjeve možete pogledati sljedeći vodič.
MongoDB je stvoren da bude vrlo učinkovit u transakcijama i operacijama, na ovaj način možete riješiti probleme iz stvarnog života bez gubitka performansi. A ZDRAVO ne zahtijeva veliku procesorsku snagu, ali kad nam se jave tisuće zahtjeva Baza podataka u kratkom vremenu možemo vidjeti kako MongoDB pomaže nam održati performanse.
Zbirke i dokumenti su vrlo moćni entiteti, budući da u nedostatku definirane strukture možemo pohraniti željene podatke održavajući čistu i urednu sliku, osim toga možemo pristupiti podacima u jednostavnim upitima koji bi nam u relacijskim modelima mogli donijeti posredne upite. Mnoge tablice.
The Baze podataka u MongoDB su poznate kao zbirke, stoga ih ne možemo tretirati kao Baze podataka tradicionalni, ako ne i kao skup dokumenata koji su grupirani pod razlikovačem s imenom.
Stvaranje zbirkeZa stvaranje zbirke ne trebaju nam posebne naredbe, jednostavno istom naredbom kojom smo je odabrali ako ne postoji, MongoDB On će biti zadužen za stvaranje novog s imenom koje smo naveli.
Ova jednostavnost olakšava nam rad, osim što smanjuje količinu koda koju moramo staviti u svoje aplikacije. Pogledajmo na sljedećoj slici primjer koda s kojim možemo odabrati zbirku u MongoDB:

Ovdje vidimo kako prvo stvaramo objekt klase Mongo (), to je uključeno pri instaliranju odgovarajućeg upravljačkog programa, zatim jednostavno pomoću objekta i upisivanjem imena Baza podataka je odabran ili kreiran. U ovom trenutku moramo biti oprezni, budući da MongoDB neće vratiti pogrešku ako je Baza podataka ne postoji, samo će stvoriti novi, pa moramo dvaput provjeriti imena koja upisujemo.
Konačno možemo stvoriti zbirku unutar Baza podataka nazvane smjernice, a time ćemo imati bazu na kojoj ćemo izvoditi svoje operacije ZDRAVO.
Kako bi se izvršile ostale operacije ZDRAVO Prvo moramo imati podatke, zato je prvo što ćemo naučiti izrada dokumenata ili umetanje zapisa, što najbolje odgovara našem tehničkom jeziku.
Hvala vozaču MongoDBJednostavno moramo stvoriti aranžman ili niz sa strukturom i potrebnim podacima za naš novi zapis, a zatim pozvati metodu umetnuti () način povezivanja. Ne moramo imati definiranu strukturu niti slijediti obrazac za to. Ako dokument ima polje, a drugi nema, to ne utječe na proces.
Pogledajmo na sljedećoj slici izvorni kod koji objašnjava gore spomenuti postupak:

Postoji alternativa metodi umetnuti () i je metoda uštedjeti (), razlika je u tome uštedjeti () ako je naveden jedinstveni identifikator i on postoji, postojeći će se zapis ažurirati novim podacima.
U zajednici razvojnih programera predlažu više suradnje uštedjeti () s čime umetnuti () za generiranje koda koji se može ponovno upotrijebiti, međutim odluka je u rukama svakog od njih.
Prema zadanim postavkama metoda umetanja u MongoDB je asinkrono, to znači da dok je Baza podataka ubacujete ili ažurirate zapis PHP nastavlja izvršavanje bez rušenja. Rezultat ovog ponašanja je da aplikacija radi brže, čak i ako motor baze podataka ne radi.
Kako nam ovo ponašanje neće uvijek biti od koristi, možemo ga prisiliti na sinkrono ponašanje prosljeđivanjem parametra sef prilikom izvođenja operacije to će uzrokovati PHP pričekajte odgovor od MongoDB prije nego što nastavi s izvršavanjem svojih uputa. Struktura parametara sef je sljedeće:
$ collection-> insert ($ adresa, niz ('safe' => true));

Prema zadanim postavkama i ako ne odredimo drugačije, MongoDB automatski generira primarne ključeve dokumenata pod imenom _iskaznica, prilikom izrade a umetnuti () sinkrono, ključ je postavljen i smješten u niz koji smo upravo umetnuli.
Dakle, ako želimo znati koji je jedinstveni identifikator, moramo se samo obratiti na ovo svojstvo niza, ako slijedimo prethodni primjer, bilo bi dovoljno samo učiniti sljedeće:
$ id = $ collection ['_ id'];

Sada prelazimo na drugu operaciju, a to je čitanje podataka koje imamo u svojim dokumentima ili Baze podataka. Ovdje možemo postavljati upite za primarni ključ izravno ili za bilo koju drugu kombinaciju svojstava našeg dokumenta.
Za pretraživanje jednostavno koristimo metodu findone () a ovome ćemo proslijediti niz sa svim elementima koje ćemo filtrirati. Pogledajmo na sljedećoj slici upit pomoću primarnog ključa, a drugi pomoću drugih svojstava dokumenta:

Ako ovdje primijetimo, za pretraživanje prema primarnom ključu, prvo što napravimo je stvoriti objekt tipa MongoId i zadivljeni ste njegovom vrijednošću, ovo je ključ za sve kako bi ispravno funkcioniralo. S druge strane, prilikom upita za svojstva dovoljno je samo postaviti vrijednost unutar niza bez potrebe za stvaranjem objekata.
Zadano MongoDB vratit će cijeli dokument nakon što pronađe podudaranje, pa ako ne želimo više od jednog ili nekoliko podataka iz njega, moramo ga navesti u drugom parametru koji je niz svojstava ili polja koje želimo , pogledajmo u sljedećem kodu kako se to može učiniti:
$ rezultat = $ zbirka-> findone (niz ('_id' => $ id), niz ('ime', 'prezime'));

Prilikom postavljanja prethodnog koda, varijabla rezultata imat će niz koji sadrži samo svojstva imena i prezimena dokumenta koji odgovaraju kriterijima pretraživanja.
Sada idemo na treću operaciju, ovo je za ažuriranje dokumenta koji je već kreiran u našoj zbirci, ovdje moramo biti oprezni, jer ako ne postavimo ispravan obrazac, možemo umjesto da ažuriramo ili dodamo svojstvo prebrisati izvorni dokument .
Kako bi se izbjegla zabuna, preporučuje se uporaba $ set koji je operator koji govori MongoDB da će parametar, ako postoji, biti ažuriran s poslanom vrijednošću, a ako ne postoji bit će kreiran. To nam omogućuje izbjegavanje pogrešaka u našoj aplikaciji, a još bolje nam omogućuje da našoj aplikaciji pružimo željenu funkcionalnost. Pogledajmo kako ovo funkcionira:

POVEĆAJTE

Tada smo shvatili kako možemo promijeniti vrijednost gradske imovine u ovom slučaju, međutim da ona ne postoji u registru, generirala bi se bez mijenjanja onog što tamo već postoji.
U nečemu možemo učiniti posebno MongoDB a to se ne može učiniti u relacijskom motoru, a to je mogućnost dodavanje polja unutar naših dokumenata, s ovim možemo dodati popise vrijednosti unutar svojstva kako bismo mogli generirati sve složenije i potpunije dokumente za naše potrebe, a sve bez utjecaja na opću strukturu drugih dokumenata koji koegzistiraju unutar iste zbirke.
Ovo je posljednja operacija, brisanje je vrlo jednostavno, gotovo jednako ili više od dodavanja ili ažuriranja, jednostavno tražimo kriterij ili filtar za brisanje, učitavamo ga u niz i izvršavamo metodu remove ().
Jedino što moramo imati na umu je da MongoDB izbrisat će sve dokumente koji odgovaraju ovom kriteriju, zato ako želimo izbrisati samo jedan moramo koristiti svojstvo samo jedan i stavite ga unutra Pravi. Pogledajmo ispod kod za brisanje dokumenta:

Ovim smo završili ovaj vodič, na osnovni, ali funkcionalan način vidjeli smo kako možemo uključiti a ZDRAVO na nerelacijsku strukturu poput MongoDB iz PHP. Ako to uspijemo svladati, stvorit ćemo aplikacije visokih performansi i vrlo fleksibilne koje će nam pomoći impresionirati naše korisnike.Je li vam se svidio i pomogao ovaj vodič?Autor možete nagraditi pritiskom na ovaj gumb kako biste mu dali pozitivan bod

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave