sql >> Database >  >> NoSQL >> MongoDB

Hoe MongoDB verschilt van een SQL-database

Als u bijvoorbeeld bekend bent met MySQL of PostgreSQL, kunt u met SQL-databases gegevens toevoegen en ophalen in een specifieke taal, SQL genaamd, die er als volgt uitziet:

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

SQL is vrij oud, geboren in 1986, en het is een beproefde technologie.

Onder de NoSQL overkoepelend plaatsen we al die databases die de SQL-taal niet gebruiken voor het opvragen van de gegevens.

MongoDB valt onder deze paraplu.

MongoDB is een documentdatabase . In plaats van records op te slaan, slaan we objecten op (genaamd documenten ).

Hoe verschilt dit van een SQL-database? Tabellen in een SQL-database zijn plat en statisch , ze kunnen gegevens hosten, maar beperkt tot wat de oorspronkelijke bedoeling was (u kunt geen kolom dynamisch toevoegen) en om complexe gegevens op te slaan, moet u veel tabellen maken en de gegevens in elke tabel koppelen, volgens de algemene praktijken van relationele databases (zoals buitenlandse sleutels, kolomtypes, enz.).

In MongoDB kunt u elk object opslaan zonder dat u zich zorgen hoeft te maken over de specifieke velden waaruit dit object bestaat en hoe u ze kunt opslaan. Je vertelt MongoDB om dat object op te slaan.

Met MongoDB hoeft u geen andere taal te leren om met de gegevens om te gaan:u roept gewoon de JavaScript-methoden aan die het blootlegt en dat is alles (u kunt er natuurlijk ook mee communiceren in andere talen).

Gegevens worden opgeslagen in een indeling die vergelijkbaar is met JSON, maar verbeterd om meer dan alleen basisgegevenstypen op te slaan.

Ik hoop dat dit je een kort overzicht geeft van de belangrijkste verschillen tussen SQL-databases en MongoDB.


  1. mongodb zoeken door meerdere array-items

  2. Dictionary<string, object>-naar-BsonDocument-conversie zonder _t-veld

  3. Mangoose-validatiefouten afhandelen - waar en hoe?

  4. Hergebruikt MongoDB verwijderde ruimte?