MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Bagaimana cara menjalankan perintah mongo melalui skrip Shell? (milik saya tidak berfungsi)

Buat my_script.js Anda file dengan satu perintah ini:

db.testColl.insertOne( { a: "hello" } )

Tempatkan file skrip di direktori Anda saat ini.


1. Jalankan JS Script dari OS Command-line:

Dari OS Prompt lakukan ini:

> mongo localhost/testDB my_script.js

Setelah perintah di atas dijalankan, Anda akan melihat output sebagai berikut (mirip, tergantung pada versi MongoDB dan OS Anda (Windows, dalam hal ini)):

MongoDB shell version v4.2.3
connecting to: mongodb://localhost:27017/testdb?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("456b350f-668f-4389-9901-7c456e2c50fe") }
MongoDB server version: 4.2.3


Sekarang, dari Mongo Shell (yaitu, lakukan mongo , lalu dari mongo cepat):

mongo > use testDB
mongo > show collections

Anda akan melihat testColl terdaftar.

mongo > db.testColl.find()
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }

Ini adalah dokumen yang dibuat di testDB database dan koleksi testColl sesuai perintah di my_script.js .


2. Jalankan Skrip JS dari Mongo Shell:

Anda juga dapat menjalankan my_script.js dari dalam Mongo Shell .

mongo > load("my_script.js")
true
mongo > db.test.find()
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }
{ "_id" : ObjectId("5e4ea10f276cde8fc5fedec5"), "a" : "hello" }

Lihat ada dua dokumen dengan _id yang berbeda nilai bidang.

CATATAN: Saya pikir Anda hanya dapat menjalankan beberapa perintah dari .js berkas.


3. Contoh Lain:

Buat file JS bernama script2.js dengan isi sebagai berikut:

db.test.find().forEach(printjson)

Perhatikan printjson metode shell mencetak dokumen ke output shell.

mongo > load("script2.js")
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }
{ "_id" : ObjectId("5e4ea10f276cde8fc5fedec5"), "a" : "hello" }


Referensi:


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bisakah saya menjalankan kueri MongoDB mentah di driver node-mongodb-native?

  2. Perintah Distinct() digunakan dengan skip() dan limit()

  3. Dapatkan ID Dokumen yang Terakhir Dimasukkan di MongoDB Dengan Driver Java

  4. Memperbarui properti dokumen yang disematkan di Mongodb

  5. MongoDB - Buat Hubungan