Pārvērst relāciju un SQL datu bāzes uz MongoDB

Satura rādītājs
Katra MongoDB datu bāze sastāv no kolekcijām, kas ir līdzvērtīgas RDBMS vai relāciju datu bāzei, kas sastāv no SQL tabulām. Katra datu bāze apkopotos datus glabā dokumentu veidā, kas ir līdzvērtīga tabulām, kurās dati tiek glabāti rindās.
Kamēr dokumentā tiek glabāti rindu dati kolonnu kopā, dokumentam ir JSON struktūra (MongoDB pazīstama kā BSON). Visbeidzot, tas, kā mums ir rindas SQL rindā, kurai ir lauki MongoDB.

Squl vaicājumu un Mondodb vaicājumu ekvivalenti
pieņemsim, ka iepriekšējā mysql datu bāze redzēsim, kā kartēt un konvertēt vaicājumus
Izveidojiet tabulu vai kolekciju
MongoDB nav nepieciešams skaidri izveidot kolekcijas struktūru, kā mēs to darām tabulām ar vaicājumu CREATE TABLE. Dokumenta struktūra tiek izveidota automātiski, kad kolekcijā notiek pirmais ieliktnis. Tomēr jūs varat izveidot tukšu kolekciju, izmantojot komandu createCollection.
Myql
CREATE TABLE "klienti" ("id" int (11) NOT NULL AUTO_INCREMENT, "name" varchar (255) NOT NULL, "city" varchar (20) NOT NULL, PRIMARY KEY ("id"))
MongoDB
db.createCollection ("klienti")
Lai pievienotu datu ierakstus
MYSQL
IEVIETOT "klientiem" ("id", "nosaukums", "pilsēta") VĒRTĪBAS (NULL, 'Fernan', 'Barcelona');
MongoDB
db.clientes.insert ({nosaukums: "Fernan", pilsēta: Barselona "})
Rādīt visus ierakstus
Myql
SELECT * FROM "klienti"
MongoDB
db.clients.find ()
Meklējiet klientu pēc vārda
Myql
SELECT * FROM "customers` WHERE" name "=" Fernan "
MongoDB
db.clientes.find ({name: "Fernan"})
Tagad mēs pievienosim vairāk kritēriju, lai izgūtu klientu pēc nosaukuma un pilsētas. Kritēriju lauki, kas norādīti, izmantojot komatus, attēlo loģisko UN nosacījumu. Tāpēc šajā paziņojumā tiks meklēti dokumenti, kas atbilst abiem kritērijiem.
Myql
SELECT * "FROM" klienti "WHERE" name "=" Fernan "AND" city "=" Barcelona "
MongoDB
db.clientes.find ({nosaukums: "Fernan", pilsēta: "Barcelona"})
Rādīt visus ierakstus klientu tabulā, kas sakārtoti augošā secībā pēc nosaukuma
Myql
ATLASIET*NO “klientiem” ***** pēc ASC nosaukuma
MongoDB
db.clientes.find (). sort ({nosaukums: 1})
Lai ierobežotu atgriežamo dokumentu skaitu, tiek izmantota dokumentu skaita ierobežošanas metode.
Myql
ATLASĪT * NO “klientu” LIMITA 10
MongoDB
db.clients.find (). limits (10)
Lai izlaistu vairākus ierakstus, MongoDB tiek izmantota izlaišanas funkcija. Piemēram, šāds paziņojums ierobežo 10 ierakstus un izlaiž pirmos piecus.
Myql
SELECT * FROM `posts` LIMIT 10 OFFSET 5
MongoDB
db.clients.find (). limits (10). izlaist (5)
Atjaunināšanas metodei ir noteikti dokumentu atlases kritēriji. Pirmais parametrs ir ieraksta identificēšana, otrais parametrs nosaka faktisko veicamo atjaunināšanas darbību. Piemēram, šāds vaicājums atlasa visus dokumentus ar nosaukumu Carlos un nosaka to pilsētu kā Madridi.
Viena atšķirība šeit ir tā, ka pēc noklusējuma MongoDB atjaunināšanas vaicājums atjaunina tikai vienu ierakstu un pirmo atbilstību dokumentā. Lai atjauninātu visus atbilstošos dokumentus, mums ir jāpiedāvā trešais parametrs, kas norāda vairākus kā patiesus, norādot, ka vēlamies atjaunināt vairākus dokumentus.
Myql
UPDATE klienti SET city = "Madrid" WHERE name = 'Carlos'
MongoDB
Atjaunināt visus atbilstošos
db.clientes.update ({name: "Carlos"}, {$ set: {city: "Madrid"}}, {multi: true})
Atjauniniet pirmo atbilstošo ierakstu
db.clientes.update ({name: "Carlos"}, {$ set: {city: "Madrid"}})Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu
wave wave wave wave wave