Maison >base de données >MongoDB >Une explication populaire des concepts de bases de données, de collections et de documents MongoDB

Une explication populaire des concepts de bases de données, de collections et de documents MongoDB

齐天大圣
齐天大圣original
2020-08-19 10:27:523761parcourir

Pour les bases de données relationnelles, nous savons qu'il existe plusieurs tables dans la base de données et plusieurs lignes de données dans les tables de données. Pour MongoDB, il existe plusieurs collections dans la base de données et les collections contiennent plusieurs documents.

Base de données

Le concept de base de données de MongoDB est similaire à Mysql, et chaque base de données peut avoir des autorisations indépendantes.

Voyons d'abord comment créer une base de données. MongoDB a également des restrictions sur les noms de bases de données. Seuls les chiffres ou les lettres peuvent être utilisés. De plus, les noms de bases de données sont sensibles à la casse. De plus, certains mots-clés ne peuvent pas être utilisés, tels que : admin, config, local, etc.

Dans MongoDB, il n'est pas nécessaire de créer explicitement une base de données. Il vous suffit de sélectionner utiliser dbName. Lorsque la base de données n'existe pas, elle sera automatiquement créée pour nous.

> use huoying
switched to db huoying

Lors de l'utilisation de la commande db, le nom de la base de données actuellement utilisée sera affiché.

> db
huoying

Pour afficher toutes les bases de données actuelles, utilisez show dbs;

> show dbs;
admin    0.000GB
config   0.000GB
huoying  0.000GB
local    0.000GB

Collection

La collection de MongoDB est similaire à la table de Mysql. y a-t-il? se compose de documents. Mais les collections n'ont pas de restrictions de champs comme les tableaux, et les documents sous la collection peuvent être de différents types. Par exemple, une collection peut contenir les deux types de documents suivants :

{"name":"gwx", "age" : 30},
{"id":1, "score":100}

Bien que les collections n'aient aucune restriction sur les documents, pour faciliter la gestion des données, nous mettons généralement les documents associés dans une collection.

Créez une collection divisée en création directe et création implicite.

# 显示的创建集合
> db.createCollection('huoying')
{ "ok" : 1 }

Crée implicitement une collection. Lors de la création directe d'un document, si la collection n'existe pas, la collection sera créée en premier

Document

Enfin, regardons la documentation. Le type de données d'un document est similaire aux données associées en PHP ou aux objets en JavaScript.

Notez que les documents sont sensibles à la casse et au type de données. Regardez l'exemple suivant :

# 下面两个是不一样的文档,他们的数据类型不一样
{"name":30}
{"name":"30"}

# 下面两个是不一样的文档,键名不一样
{"name":30}
{"NAME":30}

Nouveau document

Utilisez la commande db.collection name.insertOne (données du document) pour l'insérer dans le collection spécifiée Un document. Si la collection n'existe pas, elle sera créée implicitement.

> db.users.insertOne({"name":"gwx", "age":29})
{
 "acknowledged" : true,
 "insertedId" : ObjectId("5f0cfdbb7688816db4d031bc")
}
> db.users.find()
{ "_id" : ObjectId("5f0cfdbb7688816db4d031bc"), "name" : "gwx", "age" : 29 }
>

Modifier le document

Utiliser la mise à jour pour mettre à jour le contenu du document nécessite deux paramètres. . Utilisé pour rechercher le document spécifié, le second est le contenu du nouveau document.

> db.users.update({name:"gwx"}, {name:"monkeyking", age:500})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.users.find()
{ "_id" : ObjectId("5f0cfdbb7688816db4d031bc"), "name" : "monkeyking", "age" : 500 }

Supprimer le document

Utiliser Supprimer pour supprimer le document

> db.users.remove({age:500})
WriteResult({ "nRemoved" : 1 })

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn