mongodb shell 執行js指令碼的四種方式

2021-08-18 17:15:22 字數 1289 閱讀 3301

1. 互動式 mongo shell

大部分的 mongodb 教程,在第一章都會講解這種方式。

mongo 127.0.0.1:27017

use test

db.users.findone()

2. mongo --eval 執行一段指令碼

不進入互動模式,直接在 os 的命令列下執行一段mongodb指令碼。

mongo 127.0.0.1:27017/test --eval "printjson(db.users.findone())"

3. 在os命令列下,執行乙個js檔案

mongo 127.0.0.1:27017/test userfindone.js

userfindone.js 的內容:

printjson(db.users.findone());

4. 在mongo shell 互動模式下,執行乙個js檔案

mongo test

load("/root/mongojs/userfindone.js")

load() 引數中的檔案路徑,既可以是相對路徑,也可以是絕對路徑。

在mongo shell下檢視當前工作路徑的方法: pwd( )

當前工作路徑就是我們啟動mongo shell時,當前使用者所處的路徑。

例如:[root@cgl-centos-dev mongojs]# pwd

/root/mongojs

[root@cgl-centos-dev mongojs]# mongo

mongodb shell version: 2.6.12

connecting to: test

> pwd()

/root/mongojs

>

在js檔案中建立資料庫連線

上面所有的例子,都是在執行mongo命令時,直接連線資料庫 (127.0.0.1:27017/test)。 我們也可以在js指令碼中建立資料庫連線,上面的第三種方法可以這麼寫:

userfindone.js 檔案內容:

conn = new mongo("127.0.0.1:27017");

db = conn.getdb("test");

printjson(db.users.findone());

在命令列下執行:

mongo --nodb userfindone.js

注意:以上所有命令,如果連線的資料庫是 127.0.0.1:27017 ,則,主機和埠可以省略,例如:

mongo test --eval "printjson(db.users.findone())"

MongoDB shell操作入門

具體命令及解釋 mongo 進入mongodb show dbs 檢視所有資料庫名 use db 切換到某個資料庫 db為資料庫名 show collections 檢視資料庫中的所有集合 db 當前使用的資料庫名 db.media.insert 插入資料,資料格式全為json型別 db.media...

NoSql之旅 mongoDB shell命令總結

mongodb三元素。資料庫,集合,文件。集合相當於關聯式資料庫中的表,文件相當於表中的行。文件是json的擴充套件 bson的形式 mongodb基本的增刪改查 insert db.tablename.insert find db.tablename.find 查詢所有 db.tablename....

mongodb shell指令碼 增刪改查

mongodb第二節課作業 配置環境變數後,命令列輸入 mongo 1.進入my test資料庫 show dbs use my test show collections 2.向資料庫的user集合中插入乙個usename為deer的文件 3.查詢user集合中的文件 4.向資料庫的user集合中...