位置:首頁 > 數據庫 > MongoDB教學 > MongoDB 插入文檔

MongoDB 插入文檔

insert() 方法

要插入數據到 MongoDB 集合,需要使用 MongoDB 的  insert() 或 save() 方法。 

語法

insert() 命令的基本語法如下:

>db.COLLECTION_NAME.insert(document)

例子

>db.mycol.insert({
   _id: ObjectId(7df78ad8902c),
   title: 'MongoDB Overview', 
   description: 'MongoDB is no sql database',
   by: 'tutorials yiibai',
   url: 'http://www.gitbook.net',
   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 yiibai',
   url: 'http://www.gitbook.net',
   tags: ['mongodb', 'database', 'NoSQL'],
   likes: 100
},
{
   title: 'NoSQL Database', 
   description: 'NoSQL database doesn't have tables',
   by: 'tutorials yiibai',
   url: 'http://www.gitbook.net',
   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()方法。