本文地址http://www.cnblogs.com/egger/archive/2013/04/30/3052142.html 歡迎轉載 ,請保留此鏈接๑•́ ₃•̀๑!
MongoDB shell
MongoDB自帶簡潔但功能強大的JavaScript shell。JavaScript shell鍵入一個變量會將變量的值轉換為字符串打印到控制台上。
下面介紹基本的操作,一些注意事項。數據庫CRUD操作將在下面的篇幅中介紹《NoSQL學習之路 (四):創建、讀取、更新、刪除(CRUD)》
打開命令提示(cmd.exe)。進入到MongoDB解壓的目錄的bin目錄下,即D:\NoSQL\mongodb-win32-x86_64-2.4.3\bin;然后執行mongo.exe(或者mongo)啟動MongoDB shell。
shell默認連接test數據庫。要使用別的數據庫,在服務器地址后添加斜杠和數據庫名就可以了(下圖連接的就是本地默認端口的mongod,但用的是admin數據庫):
還有一種方法選擇連接數據庫,像SQL shell中一樣,使用 "use databaseName",數據庫不存在也沒關系。使用"db"查看當前連接數據庫名詞。
使用--nodb選項啟動shell,而不連接數據庫。
Tips:使用ctrl+w 快速刪除光標所在行內容。
使用db.help()可以查看數據庫級別的命令的幫助,集合的相關幫助可以通過db.foo.help()來査看。
有個了解函數功用的技巧,就是在輸入的時候不要輸括號。這樣就會顯示該函數的JavaScript源代碼。下面我們看看remove的機制:
使用db.集合名的方式來訪問集合一般不會有問題,但如果集合名恰好是數據庫類的一個屬性時就不行了。當JavaScript只有在db中找不到指定的屬性時,才會將其作為集合返回。當有屬性
與目標集合同名時,可以使用getCollection函數。
例如,要訪問version這個集合。因為db.version是個數據庫函數(它返回正在運行的MongoDB服務器的版本)。所以輸入db.version會顯示該函數的JavaScript源代碼,而不是我們想顯示的集合。
當我們遍歷集合眾文檔信息時,可以書用"."操作符。
Show(db.posts.title);
Show(db.posts.content);
……
也可以使用數組訪問形式來訪問子集合:
collections=["title","author","content","date"]; for (i in collections) { Show(db.posts[collections[i]]); }
JavaScript解釋器
shell是功能完本的JavaScript解釋器 可以運行任何JavaScript程序.
基本運算:
調用Javascript標准庫或者函數:
從shell中可以連接任意多個數據庫,這對多個服務器的環境還是非常方便的。調用connect (),並將結果賦值給變量。
(分片環境中待補充----)