sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur MongoDB skiljer sig från en SQL-databas

Om du till exempel är bekant med MySQL eller PostgreSQL, tillåter SQL-databaser dig att lägga till och hämta data med ett specifikt språk, kallat SQL, som ser ut så här:

SELECT * FROM cars
INSERT INTO cars VALUES (fiesta, 2010)

SQL är ganska gammalt, föddes 1986, och det är en stridstestad teknologi.

Under NoSQL paraply lägger vi alla de databaser som inte använder SQL-språket för att söka efter data.

MongoDB faller under detta paraply.

MongoDB är en dokumentdatabas . Istället för att lagra poster lagrar vi objekt (kallade dokument ).

Hur skiljer sig detta från en SQL-databas? Tabeller i en SQL-databas är platta och statisk , de kan vara värd för data men begränsade till vad den ursprungliga avsikten var (du kan inte lägga till en kolumn dynamiskt) och för att lagra komplexa data måste du skapa många tabeller och länka data i varje tabell, enligt de vanliga rutinerna för relationsdatabaser (som t.ex. främmande nycklar, kolumntyper, etc).

I MongoDB kan du lagra vilket objekt som helst utan att behöva oroa dig för de särskilda fälten som utgör detta objekt och hur de ska lagras. Du säger åt MongoDB att lagra det objektet.

Med MongoDB behöver du inte lära dig ett annat språk för att interagera med data:du anropar bara JavaScript-metoderna som den exponerar och det är det (naturligtvis kan du interagera med det med andra språk också).

Data lagras i ett format som liknar JSON, men förbättrat för att tillåta lagring av mer än bara grundläggande datatyper.

Jag hoppas att detta ger dig en kort översikt över de viktigaste skillnaderna mellan SQL-databaser och MongoDB.


  1. Det gick inte att ansluta till server 127.0.0.1:27017

  2. Fråga MongoDB med $and och Multiple $or

  3. Utför case-statement i mongodb aggregeringsramverk

  4. Hur man säkert laddar en hash och konverterar ett värde till ett booleskt värde om det finns