В этой главе мы узнаем, как вставить документ в коллекцию MongoDB.
Метод вставки ()
Чтобы вставить данные в коллекцию MongoDB, вам необходимо использовать метод insert () или save () MongoDB.
Синтаксис
Основной синтаксис команды insert () следующий:
>db.COLLECTION_NAME.insert(document)
пример
>db.mycol.insert({
_id: ObjectId(7df78ad8902c),
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'tutorials point',
url: 'http://www.tutorialspoint.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
})
Здесь mycol — это название нашей коллекции, созданное в предыдущей главе. Если коллекция не существует в базе данных, MongoDB создаст эту коллекцию и вставит в нее документ
Во вставленном документе, если мы не указываем параметр _id, MongoDB назначает уникальный ObjectId для этого документа.
_id — шестнадцатеричное число 12 байтов, уникальное для каждого документа в коллекции. 12 байтов делятся следующим образом —
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
Чтобы вставить несколько документов в один запрос, вы можете передать массив документов в команде insert ().
пример
>db.post.insert([
{
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'tutorials point',
url: 'http://www.tutorialspoint.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 100
},
{
title: 'NoSQL Database',
description: "NoSQL database doesn't have tables",
by: 'tutorials point',
url: 'http://www.tutorialspoint.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes: 20,
comments: [
{
user:'user1',
message: 'My first comment',
dateCreated: new Date(2013,11,10,2,35),
like: 0
}
]
}
])
Для вставки документа вы также можете использовать db.post.save (document) . Если вы не укажете _id в документе, тогда метод save () будет работать так же, как метод insert () . Если вы укажете _id, он заменит все данные документа, содержащие _id, как указано в методе save ().