MongoDB
資料庫語句
注:(在 MongoDB 預設資料庫測試。如果沒有建立任何資料庫,然後集合将被存儲在測試資料庫。)
1、 建立資料庫
use DATABASE_NAME
2、 檢查資料庫清單
3、 删除資料庫
db.dropDatabase()
集合操作
1、 建立集合
db.createCollection(name, options)
Name String 要建立的集合名稱
Options Document (可選)指定有關記憶體大小和索引選項
2、 删除集合
db.COLLECTION_NAME.drop()
文檔操作
1、 插入文檔
db.COLLECTION_NAME.insert(document)
例如:
db.mycol.insert({
_id: ObjectId(df78ad8902c),
title: 'MongoDB Overview',
description: 'MongoDB is no sql database',
by: 'tutorials yiibai',
url: 'http://www.yiibai.com',
tags: ['mongodb', 'database', 'NoSQL'],
likes:
})
2、 查詢文檔
* find()方法:
find() 方法将在非結構化的方式顯示所有的檔案。
db.COLLECTION_NAME.find()
-
pretty() 方法
結果顯示在一個格式化的方式,可以使用 pretty() 方法
db.mycol.find().pretty()
- 例子
db.mycol.find().pretty()
{
"_id": ObjectId(df78ad8902c),
"title": "MongoDB Overview",
"description": "MongoDB is no sql database",
"by": "tutorials yiibai",
"url": "http://www.yiibai.com",
"tags": ["mongodb", "database", "NoSQL"],
"likes": "100"
}
*除了find() 方法外,還有一個 findOne() 法,傳回一個檔案。
*AND 在MongoDB中用法
在 find() 方法,如果通過多個鍵分離’,’,那麼 MongoDB 處理 AND 條件。AND 基本文法如下所示
db.mycol.find({key1:value1, key2:value2}).pretty()
-
MongoDB中OR
OR條件的基礎上要查詢檔案,需要使用or關鍵字。OR 基本文法如下所示:
db.mycol.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
).pretty()
3、MongoDB 更新文檔
MongoDB的 update() 和 save() 方法用于更新文檔的集合。 update()方法更新現有的文檔值,而替換現有的文檔通過的檔案中 save() 方法。
*update()方法更新現有文檔值。
db.COLLECTION_NAME.update(SELECTIOIN_CRITERIA, UPDATED_DATA)
例子:
MongoDB預設将隻更新單一的檔案,來更新多個你需要設定參數置’multi’ 為true
*save() 方法替換現有的文檔和通過新的文檔 save() 方法
db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})
例子:
db.mycol.save(
{
"_id" : ObjectId(adf45ec7), "title":"Yiibai New Topic", "by":"Yiibai"
}
)
3、MongoDB 删除文檔
*remove() 方法
MongoDB的 remove() 方法用于從集合中删除文檔。remove() 方法接受兩個參數。第一個是删除criteria ,第二是justOne标志:
deletion criteria :(可選)删除标準,根據檔案将被删除。
justOne : (可選)如果設定為true或1,然後隻删除一個檔案。
例子:
db.mycol.remove({'title':'MongoDB Overview'})
*删除隻有一個
如果有多個記錄且要删除的隻有第一條記錄,那麼設定remove()方法中justOne參數
db.COLLECTION_NAME.remove(DELETION_CRITERIA,)
*删除所有檔案
如果不指定删除條件,然後MongoDB将從集合中删除整個檔案。這相當于SQL的truncate指令。
db.mycol.remove()