標籤:
1 概述
mongo shell是MongoDB的一個互動JavaScript介面(就是可以在這個shell中使用JavaScript文法)。使用者能夠通過mongo shell執行查詢、更新資料等操作。mongo shell是MongoDB的一個組件,一旦使用者安裝並且啟動MongoDB服務之後,就能夠通過mongo shell串連到MongoDB執行個體。
1.1 啟動mongo shell
安裝MongoDB之後,將bin檔案夾路徑加入到Path環境變數中,直接在命令視窗中輸入mongo,就啟動了mongo shell。在啟動之前,確保MongoDB服務已經啟動。如果使用者輸入mongo並且不帶任何參數,mongo shell 預設串連到localhost:27017。
mongo //安裝MongoDB之後,將bin檔案夾路徑加入到Path環境變數中
1.2 使用mongo shell
①顯示使用者正在使用的資料庫(database),輸入db:
db //這個操作會返回預設的資料庫test,如果需要使用其它資料庫,使用 use<db>
use test
為了查看可用的資料庫,可以使用命令 show dbs,也可以通過db.getSiblingDB()的方法在不切換當前資料庫內容相關的情況下去訪問另一個資料庫。
show dbsdb.getSiblingDB(arg) //arg表示資料庫名
使用者也可以通過命令一次性的建立資料庫和儲存資料,例如,以下命令就是建立新資料庫(database)和集合(collection,可以理解為關聯式資料庫中的table)並且執行插入(insert())操作。
use myDBdb.myCollection.insert({x:1})
如果你輸入的collection名字中包括空白,字母開頭等在mongo shell環境下報錯,可以換一種文法擷取所需的集合,命令樣本如下:
db["myCollection"].find()db.getCollection("myCollection").find()
1.3 格式化輸出結果
在mongo shell環境下,db.collection.find()方法返回一個指向結果集的遊標,如果遊標沒有賦值給一個變數,那麼遊標將會自動枚舉20次並將符合查詢條件的前20條結果(document相當於關聯式資料庫中的記錄)列印出來,輸入it命令之後,將會再列印20條結果。為了能夠將結果格式化,可以添加.pretty()方法:
db.collection.find().pretty()
也可以在mongo shell中輸入一下命令:
print() 只列印,不格式化
print(tojson(<obj>)) JSON格式化的形式,效果等同printjson()
printjson()
1.4 在mongo shell中多行輸入
當使用者輸完一行之後,並且以(,{,[結尾的時候,下一行自動會出現(...),直到使用者以),},]結尾,mongo shell才會運行使用者輸入的代碼:
1.4 在mongo shell命令自動補全,退出shell
通過tab鍵可以補全一些命令,輸入quit()或者Ctrl-C快速鍵可以退出shell環境。
2 MondoDB資料庫的CRUD(增刪改查)操作
2.1 Documents和Collection概述
注(analogous:類似)
2.2 查詢
在Mongo中執行CURD操作,基本上都是對單獨的(single)集合進行操作。
具體操作請參考官方網站文檔:https://docs.mongodb.org/manual/core/crud-introduction/
MongoDB使用(MongoShell)