В этой главе мы узнаем, как вставить документ в коллекцию 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 ().