Contoh penggunaan keepGoing untuk memungkinkan penyisipan batch selesai bahkan ketika ada dokumen ilegal di batch
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];
menghapus
Removes documents specified by selector
from the db.
- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- tunggal {Boolean, default. false}, menghapus dokumen pertama yang ditemukan
- fullResult {Boolean, default. false}, mengembalikan dokumen hasil lengkap [dokumen yang dikembalikan akan berbeda menurut versi server]
- [pemilih] [objek] – pilih opsional, tidak ada pemilih yang setara dengan menghapus semua dokumen
- [opsi] [objek] – opsi tambahan selama penghapusan
- [panggilan balik] [fungsi] – harus disediakan jika Anda melakukan penghapusan dengan masalah penulisan
batal
Contoh
Contoh menghapus semua dokumen dalam koleksi tidak menggunakan mode aman
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_Contoh menghapus subset dokumen menggunakan mode aman untuk memastikan penghapusan dokumen
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_subset_of_documents_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[{a:1}, {w:1}, function[err, numberOfRemovedDocs] { assert.equal[null, err]; assert.equal[1, numberOfRemovedDocs]; db.close[]; }]; }]; }] }];
ganti nama
Mengganti nama koleksi
Pilihan- dropTarget {Boolean, default. false}, jatuhkan koleksi nama target jika sudah ada sebelumnya
- newName [string] – nama baru dari koleksi
- [opsi] [objek] – mengembalikan hasil opsi
- callback [fungsi] – callback yang menerima hasilnya
batal
Contoh
Contoh penggantian nama koleksi secara ilegal dan legal
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Open a couple of collections db.createCollection['test_rename_collection', function[err, collection1] { db.createCollection['test_rename_collection2', function[err, collection2] { // Attemp to rename a collection to a number try { collection1.rename[5, function[err, collection] {}]; } catch[err] { assert.ok[err instanceof Error]; assert.equal["collection name must be a String", err.message]; } // Attemp to rename a collection to an empty string try { collection1.rename["", function[err, collection] {}]; } catch[err] { assert.ok[err instanceof Error]; assert.equal["collection names cannot be empty", err.message]; } // Attemp to rename a collection to an illegal name including the character $ try { collection1.rename["te$t", function[err, collection] {}]; } catch[err] { assert.ok[err instanceof Error]; assert.equal["collection names must not contain '$'", err.message]; } // Attemp to rename a collection to an illegal name starting with the character . try { collection1.rename[".test", function[err, collection] {}]; } catch[err] { assert.ok[err instanceof Error]; assert.equal["collection names must not start or end with '.'", err.message]; } // Attemp to rename a collection to an illegal name ending with the character . try { collection1.rename["test.", function[err, collection] {}]; } catch[err] { assert.ok[err instanceof Error]; assert.equal["collection names must not start or end with '.'", err.message]; } // Attemp to rename a collection to an illegal name with an empty middle name try { collection1.rename["tes..t", function[err, collection] {}]; } catch[err] { assert.equal["collection names cannot be empty", err.message]; } // Insert a couple of documents collection1.insert[[{'x':1}, {'x':2}], {w:1}, function[err, docs] { // Attemp to rename the first collection to the second one, this will fail collection1.rename['test_rename_collection2', function[err, collection] { assert.ok[err instanceof Error]; assert.ok[err.message.length > 0]; // Attemp to rename the first collection to a name that does not exist // this will be succesful collection1.rename['test_rename_collection3', function[err, collection] { assert.equal["test_rename_collection3", collection.collectionName]; // Ensure that the collection is pointing to the new one collection1.count[function[err, count] { assert.equal[2, count]; db.close[]; }]; }]; }]; }] }]; }]; }];
menyimpan
Menyimpan dokumen. Fungsi penggantian dokumen lengkap yang sederhana. Tidak direkomendasikan untuk efisiensi, gunakan operator atom dan perbarui sebagai gantinya untuk operasi yang lebih efisien
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- [doc] [objek] – dokumen yang akan disimpan
- [opsi] [objek] – opsi tambahan selama penghapusan
- [panggilan balik] [fungsi] – harus disediakan jika Anda melakukan pembaruan dengan masalah penulisan
batal
Contoh
Contoh penyimpanan dokumen sederhana dengan safe disetel ke false
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch the collection var collection = db.collection["save_a_simple_document"]; // Save a document with no safe option collection.save[{hello:'world'}]; // Wait for a second setTimeout[function[] { // Find the saved document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.equal['world', item.hello]; db.close[]; }]; }, 1000]; }];_Contoh menyimpan dokumen sederhana lalu menyimpan kembali dengan safe set ke true
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch the collection var collection = db.collection["save_a_simple_document_modify_it_and_resave_it"]; // Save a document with no safe option collection.save[{hello:'world'}, {w: 0}, function[err, result] { // Find the saved document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.equal['world', item.hello]; // Update the document item['hello2'] = 'world2'; // Save the item with the additional field collection.save[item, {w: 1}, function[err, result] { // Find the changed document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.equal['world', item.hello]; assert.equal['world2', item.hello2]; db.close[]; }]; }]; }]; }]; }];
memperbarui
Memperbarui dokumen
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- upsert {Boolean, default. false}, lakukan operasi upsert
- multi {Boolean, default. false}, perbarui semua dokumen yang cocok dengan pemilih
- serializeFunctions {Boolean, default. false}, membuat serialisasi fungsi pada dokumen
- checkKeys {Boolean, default. true}, memungkinkan untuk menonaktifkan pemeriksaan kunci dokumen [PERINGATAN MEMBUKA ANDA UNTUK SERANGAN INJEKSI]
- fullResult {Boolean, default. false}, mengembalikan dokumen hasil lengkap [dokumen yang dikembalikan akan berbeda menurut versi server]
- pemilih [objek] – permintaan untuk memilih dokumen/dokumen yang akan diperbarui
- dokumen [objek] – bidang/val yang akan diperbarui, atau dalam kasus operasi upsert, dimasukkan
- [opsi] [objek] – opsi tambahan selama pembaruan
- [panggilan balik] [fungsi] – harus disediakan jika Anda melakukan pembaruan dengan masalah penulisan
batal
Contoh
Contoh pembaruan dokumen sederhana dengan setelan aman ke false pada dokumen yang sudah ada
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Get a collection db.collection['update_a_simple_document', function[err, collection] { // Insert a document, then update it collection.insert[{a:1}, {w: 1}, function[err, doc] { // Update the document with an atomic operator collection.update[{a:1}, {$set:{b:2}}]; // Wait for a second then fetch the document setTimeout[function[] { // Fetch the document that we modified collection.findOne[{a:1}, function[err, item] { assert.equal[null, err]; assert.equal[1, item.a]; assert.equal[2, item.b]; db.close[]; }]; }, 1000]; }] }]; }];_Contoh update dokumen sederhana menggunakan upsert [dokumen akan disisipkan jika belum ada]
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];0Contoh pembaruan di beberapa dokumen menggunakan opsi multi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];1
berbeda
Pengembalian perintah yang berbeda mengembalikan daftar nilai yang berbeda untuk kunci yang diberikan di seluruh koleksi
Pilihan- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- kunci [string] – kunci untuk menjalankan berbeda
- [kueri] [objek] – kueri opsi untuk mempersempit objek yang dikembalikan
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari different atau null jika terjadi error
batal
Contoh
Contoh menjalankan perintah berbeda terhadap koleksi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];2Contoh menjalankan perintah berbeda terhadap kumpulan dengan kueri filter
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];3
menghitung
Hitung jumlah dokumen yang cocok di db ke kueri
Pilihan- lewati {Number}, Jumlah dokumen yang akan dilewati untuk hitungan
- limit {Number}, Batas dokumen yang akan dihitung
- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- [kueri] [objek] – kueri untuk difilter sebelum melakukan penghitungan
- [opsi] [objek] – opsi tambahan selama hitungan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode count atau null jika terjadi error
batal
Contoh
Contoh menjalankan perintah hitung sederhana terhadap koleksi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];4
menjatuhkan
Jatuhkan koleksinya
jatuhkan [panggilan balik] Argumen- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode drop atau null jika terjadi error
batal
Contoh
Contoh menyimpan dokumen sederhana lalu menyimpan kembali dengan safe set ke true
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];5
findAndModify
Temukan dan perbarui dokumen
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- hapus {Boolean, default. false}, setel ke true untuk menghapus objek sebelum kembali
- upsert {Boolean, default. false}, lakukan operasi upsert
- baru {Boolean, default. false}, setel ke true jika Anda ingin mengembalikan objek yang dimodifikasi daripada aslinya. Diabaikan untuk dihapus
- query [object] – query objek untuk menemukan objek yang akan dimodifikasi
- urutkan [array] –
- jika beberapa dokumen cocok, pilih yang pertama dalam urutan yang ditentukan sebagai objek untuk dimanipulasi
- dokumen [objek] –
- bidang/val yang akan diperbarui
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode findAndModify atau null jika terjadi error
batal
Contoh
Serangkaian cara berbeda untuk menggunakan perintah findAndModify
Perintah findAndModify pertama memodifikasi dokumen dan mengembalikan dokumen yang dimodifikasi kembali. Perintah findAndModify kedua menghapus dokumen. Perintah findAndModify kedua memunculkan dokumen dan mengembalikan dokumen baru
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];6
findAndRemove
Temukan dan hapus dokumen
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- query [object] – query objek untuk menemukan objek yang akan dimodifikasi
- urutkan [array] –
- jika beberapa dokumen cocok, pilih yang pertama dalam urutan yang ditentukan sebagai objek untuk dimanipulasi
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode findAndRemove atau null jika terjadi error
batal
Contoh
Contoh penggunaan findAndRemove
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];7
Temukan
Membuat kursor untuk kueri yang dapat digunakan untuk mengulangi hasil dari MongoDB
Berbagai kemungkinan argumen- panggilan balik?
- pemilih, panggilan balik?,
- pemilih, bidang, panggilan balik?
- pemilih, opsi, panggilan balik?
- pemilih, bidang, opsi, panggilan balik?
- pemilih, bidang, lewati, batasi, panggilan balik?
- pemilih, bidang, lewati, batasi, batas waktu, panggilan balik?
- batasi {Angka, default. 0}, menyetel batas dokumen yang dikembalikan dalam kueri
- urutkan {Array. Object}, setel untuk mengurutkan dokumen yang kembali dari kueri. Susunan indeks, [['a', 1]] dll
- bidang {Objek}, bidang yang akan dikembalikan dalam kueri. Objek bidang untuk disertakan atau dikecualikan [tidak keduanya], {'a'. 1}
- lewati {Nomor, default. 0}, setel untuk melewati N dokumen di depan kueri Anda [berguna untuk penomoran halaman]
- petunjuk {Objek}, beri tahu kueri untuk menggunakan indeks tertentu dalam kueri. Objek indeks yang akan digunakan, {'_id'. 1}
- jelaskan {Boolean, default. false}, jelaskan kueri alih-alih mengembalikan data
- snapshot {Boolean, default. false}, kueri snapshot
- batas waktu {Boolean, default. false}, tentukan apakah kursor dapat kehabisan waktu
- tailable {Boolean, default. false}, tentukan apakah kursor dapat disesuaikan
- tailableRetryInterval {Nomor, default. 100}, tentukan milidetik antara getMores pada kursor yang dapat disesuaikan
- numberOfRetries {Nomor, default. 5}, tentukan berapa kali untuk mencoba kembali kursor yang dapat disesuaikan
- awaitdata {Boolean, default. false} memungkinkan kursor menunggu data, hanya berlaku untuk kursor yang dapat disesuaikan
- oplogReplay {Boolean, default. false} menetapkan bendera internal, hanya berlaku untuk kursor yang dapat disesuaikan
- knalpot {Boolean, default. false} minta server mengirim semua dokumen sekaligus sebagai paket getMore, tidak disarankan
- batchSize {Nomor, default. 0}, setel batchSize untuk getMoreCommand saat mengulangi hasil kueri
- returnKey {Boolean, default. false}, hanya mengembalikan kunci indeks
- maxScan {Number}, Batasi jumlah item yang akan dipindai
- min {Angka}, Tetapkan batas indeks
- maks {Angka}, Tetapkan batas indeks
- showDiskLoc {Boolean, default. false}, Tampilkan lokasi disk hasil
- komentar {String}, Anda dapat meletakkan kolom $comment pada kueri untuk mempermudah pencarian di log profiler
- mentah {Boolean, default. false}, Kembalikan semua dokumen BSON sebagai dokumen Raw Buffer
- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [[ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- numberOfRetries {Nomor, default. 5}, jika menggunakan aawaidata menentukan berapa kali untuk mencoba lagi pada waktu habis
- parsial {Boolean, default. false}, tentukan apakah kursor harus mengembalikan hasil parsial saat melakukan kueri terhadap sistem yang di-shard
- maxTimeMS {Number}, jumlah milidetik untuk menunggu sebelum membatalkan kueri
- query [object] – query objek untuk menemukan objek yang akan dimodifikasi
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode find atau null jika terjadi error
kursor mengembalikan kursor ke kueri
Contoh
Kueri sederhana menggunakan metode find pada koleksi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];_8Kueri sederhana yang menampilkan penjelasan untuk kueri
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["batch_document_insert_collection_safe"]; // Insert a single document collection.insert[[{hello:'world_safe1'} , {hello:'world_safe2'}], {w:1}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world_safe2'}, function[err, item] { assert.equal[null, err]; assert.equal['world_safe2', item.hello]; db.close[]; }] }]; }];_9Permintaan sederhana yang menunjukkan lewati dan batasi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];0
findOne
Menemukan satu dokumen berdasarkan kueri
Berbagai kemungkinan argumen- panggilan balik?
- pemilih, panggilan balik?,
- pemilih, bidang, panggilan balik?
- pemilih, opsi, panggilan balik?
- pemilih, bidang, opsi, panggilan balik?
- pemilih, bidang, lewati, batasi, panggilan balik?
- pemilih, bidang, lewati, batasi, batas waktu, panggilan balik?
- batasi {Angka, default. 0}, menyetel batas dokumen yang dikembalikan dalam kueri
- urutkan {Array. Object}, setel untuk mengurutkan dokumen yang kembali dari kueri. Susunan indeks, [['a', 1]] dll
- bidang {Objek}, bidang yang akan dikembalikan dalam kueri. Objek bidang untuk disertakan atau dikecualikan [tidak keduanya], {'a'. 1}
- lewati {Nomor, default. 0}, setel untuk melewati N dokumen di depan kueri Anda [berguna untuk penomoran halaman]
- petunjuk {Objek}, beri tahu kueri untuk menggunakan indeks tertentu dalam kueri. Objek indeks yang akan digunakan, {'_id'. 1}
- jelaskan {Boolean, default. false}, jelaskan kueri alih-alih mengembalikan data
- snapshot {Boolean, default. false}, kueri snapshot
- batas waktu {Boolean, default. false}, tentukan apakah kursor dapat kehabisan waktu
- tailable {Boolean, default. false}, tentukan apakah kursor dapat disesuaikan
- batchSize {Nomor, default. 0}, setel batchSize untuk getMoreCommand saat mengulangi hasil kueri
- returnKey {Boolean, default. false}, hanya mengembalikan kunci indeks
- maxScan {Number}, Batasi jumlah item yang akan dipindai
- min {Angka}, Tetapkan batas indeks
- maks {Angka}, Tetapkan batas indeks
- showDiskLoc {Boolean, default. false}, Tampilkan lokasi disk hasil
- komentar {String}, Anda dapat meletakkan kolom $comment pada kueri untuk mempermudah pencarian di log profiler
- mentah {Boolean, default. false}, Kembalikan semua dokumen BSON sebagai dokumen Raw Buffer
- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- parsial {Boolean, default. false}, tentukan apakah kursor harus mengembalikan hasil parsial saat melakukan kueri terhadap sistem yang di-shard
- maxTimeMS {Number}, jumlah milidetik untuk menunggu sebelum membatalkan kueri
- query [object] – query objek untuk menemukan objek yang akan dimodifikasi
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode findOne atau null jika terjadi error
kursor mengembalikan kursor ke kueri
Contoh
Kueri sederhana menggunakan findOne
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];1
buatIndex
Membuat indeks pada koleksi
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- unik {Boolean, default. false}, membuat indeks unik
- jarang {Boolean, default. false}, membuat indeks jarang
- latar belakang {Boolean, default. false}, membuat indeks di latar belakang, menghasilkan bila memungkinkan
- dropDup {Boolean, default. false}, indeks unik tidak dapat dibuat pada kunci yang memiliki nilai duplikat yang sudah ada sebelumnya. Jika Anda tetap ingin membuat indeks, pertahankan dokumen pertama yang diindeks basis data dan hapus semua dokumen berikutnya yang memiliki nilai duplikat
- min {Number}, untuk indeks geospasial tetapkan batas bawah untuk koordinat
- max {Number}, untuk indeks geospasial atur batas tinggi untuk koordinat
- v {Number}, tentukan versi format indeks
- expiredAfterSeconds {Number}, memungkinkan Anda untuk kedaluwarsa data pada indeks yang diterapkan ke data [MongoDB 2. 2 atau lebih tinggi]
- nama {String}, ganti nama indeks yang dibuat secara otomatis [berguna jika nama yang dihasilkan lebih besar dari 128 byte]
- fieldOrSpec [objek] – fieldOrSpec yang mendefinisikan indeks
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode createIndex atau null jika terjadi error
batal
Contoh
CreateIndex sederhana menggunakan indeks bidang tunggal sederhana
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];2CreateIndex yang lebih kompleks menggunakan indeks unik majemuk di latar belakang dan menjatuhkan dokumen duplikat
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];3
sureIndex
Memastikan bahwa indeks ada, jika tidak, ia akan membuatnya
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- unik {Boolean, default. false}, membuat indeks unik
- jarang {Boolean, default. false}, membuat indeks jarang
- latar belakang {Boolean, default. false}, membuat indeks di latar belakang, menghasilkan bila memungkinkan
- dropDup {Boolean, default. false}, indeks unik tidak dapat dibuat pada kunci yang memiliki nilai duplikat yang sudah ada sebelumnya. Jika Anda tetap ingin membuat indeks, pertahankan dokumen pertama yang diindeks basis data dan hapus semua dokumen berikutnya yang memiliki nilai duplikat
- min {Number}, untuk indeks geospasial tetapkan batas bawah untuk koordinat
- max {Number}, untuk indeks geospasial atur batas tinggi untuk koordinat
- v {Number}, tentukan versi format indeks
- expiredAfterSeconds {Number}, memungkinkan Anda untuk kedaluwarsa data pada indeks yang diterapkan ke data [MongoDB 2. 2 atau lebih tinggi]
- nama {String}, ganti nama indeks yang dibuat secara otomatis [berguna jika nama yang dihasilkan lebih besar dari 128 byte]
- fieldOrSpec [objek] – fieldOrSpec yang mendefinisikan indeks
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode sureIndex atau null jika terjadi kesalahan
batal
Contoh
SureIndex yang lebih kompleks menggunakan indeks unik majemuk di latar belakang dan menjatuhkan dokumen duplikat
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];_4
indexInformation
Mengambil info indeks koleksi ini
Pilihan- penuh {Boolean, default. false}, mengembalikan informasi indeks mentah lengkap
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode indexInformation atau null jika terjadi error
batal
Contoh
Contoh yang menunjukkan informasi yang dikembalikan oleh indexInformation
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];5
dropIndex
Menjatuhkan indeks dari koleksi ini
dropIndex[nama, panggilan balik] Argumen- nama [tali] –
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode dropIndex atau null jika terjadi error
batal
Contoh
Contoh yang menunjukkan pembuatan dan pelepasan indeks
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];6
dropAllIndex
Menjatuhkan semua indeks dari koleksi ini
dropAllIndexes[callback]Argumen- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode dropAllIndexes atau null jika terjadi error
batal
indeks ulang
Indeks ulang semua indeks pada koleksi Peringatan. reIndex adalah operasi pemblokiran [indeks dibangun kembali di latar depan] dan akan lambat untuk koleksi besar
reIndex[callback] Argumen- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode reIndex atau null jika terjadi error
batal
Contoh
Contoh yang menunjukkan cara memaksa pengindeksan ulang koleksi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];7
mapReduce
Jalankan Pengurangan Peta di seluruh koleksi. Ketahuilah bahwa opsi sebaris untuk keluar akan mengembalikan serangkaian hasil, bukan koleksi
Pilihan- out {Object}, tetapkan target keluaran untuk pekerjaan pengurangan peta. {Di barisan. 1}. {mengganti. ’namakoleksi’}. {menggabungkan. ’namakoleksi’}. {mengurangi. ’namakoleksi’}
- kueri {Objek}, objek filter kueri
- sort {Object}, urutkan objek input menggunakan kunci ini. Berguna untuk pengoptimalan, seperti menyortir berdasarkan tombol emit untuk mengurangi lebih sedikit
- limit {Number}, jumlah objek yang akan dikembalikan dari koleksi
- keeptemp {Boolean, default. false}, simpan data sementara
- menyelesaikan {Function. String}, selesaikan fungsi
- scope {Object}, dapat mengirimkan variabel yang dapat diakses dari map/reduce/finalize
- jsMode {Boolean, default. false}, dimungkinkan untuk membuat eksekusi tetap di JS. Disediakan dalam MongoDB > 2. 0. X
- verbose {Boolean, default. false}, berikan statistik tentang waktu pelaksanaan pekerjaan
- readPreference {String, only for inline results}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- map [fungsi] – fungsi pemetaan
- kurangi [fungsi] – fungsi kurangi
- [opsi] [objek] – opsi untuk peta mengurangi pekerjaan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode mapReduce atau null jika terjadi error
batal
Contoh
Contoh pengurangan peta sederhana
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];8Contoh pengurangan peta sederhana menggunakan tipe output inline pada MongoDB > 1. 7. 6 mengembalikan statistik
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; db.open[function[err, db] { // Fetch a collection to insert document into var collection = db.collection["simple_document_insert_with_function_safe"]; // Insert a single document collection.insert[{hello:'world' , func:function[] {}}, {w:1, serializeFunctions:true}, function[err, result] { assert.equal[null, err]; // Fetch the document collection.findOne[{hello:'world'}, function[err, item] { assert.equal[null, err]; assert.ok["function[] {}", item.code]; db.close[]; }] }]; }];_9Mapreduce different test dengan cakupan yang disediakan berisi fungsi javascript
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];0Mapreduce different test dengan cakupan yang disediakan berisi objek javascript dengan fungsi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_1
kelompok
Jalankan perintah grup di seluruh koleksi
Pilihan- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- kunci [objek] – objek, larik, atau fungsi yang mengekspresikan kunci untuk dikelompokkan
- kondisi [objek] – kondisi opsional yang harus benar agar baris dipertimbangkan
- initial [objek] – nilai awal dari objek penghitung agregasi
- kurangi [fungsi] – fungsi kurangi menggabungkan [mengurangi] objek yang diulang
- finalize [fungsi] – fungsi opsional untuk dijalankan pada setiap item dalam kumpulan hasil tepat sebelum item dikembalikan
- perintah [boolean] – tentukan apakah Anda ingin menjalankan menggunakan perintah grup internal atau menggunakan eval, standarnya benar
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari group method atau null jika terjadi error
batal
Contoh
Banyak sekali cara berbeda untuk menjalankan perintah grup
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_2
pilihan
Mengembalikan opsi koleksi
opsi [panggilan balik] Argumen- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode options atau null jika terjadi error
batal
Contoh
Contoh mengembalikan opsi untuk koleksi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_3
isCapped
Mengembalikan jika koleksi adalah koleksi yang dibatasi
Argumen isCapped[callback].- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode isCapped atau null jika terjadi error
batal
Contoh
Contoh yang menunjukkan cara menentukan apakah itu koleksi yang dibatasi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_4
indexExists
Memeriksa apakah ada satu atau lebih indeks pada koleksi
indexExists[indexNames, callback]Argumen- indexNames [string] – periksa apakah ada satu atau lebih indeks pada koleksi
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode indexExists atau null jika terjadi error
batal
Contoh
Contoh yang menunjukkan penggunaan fungsi indexExists untuk nama indeks tunggal dan daftar nama indeks
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];5
geoNear
Jalankan perintah geoNear untuk mencari item dalam koleksi
Pilihan- num {Number}, jumlah maksimal hasil yang akan ditampilkan
- minDistance {Number}, sertakan hasil mulai dari minDistance dari titik [2. 6 atau lebih tinggi]
- maxDistance {Number}, sertakan hasil hingga maxDistance dari titik tersebut
- distanceMultiplier {Number}, sertakan nilai untuk mengalikan jarak dengan memungkinkan konversi rentang
- kueri {Objek}, filter hasilnya berdasarkan kueri
- bulat {Boolean, default. false}, lakukan kueri menggunakan model bola
- uniqueDocs {Boolean, default. false}, lokasi terdekat dalam dokumen ke tengah wilayah pencarian akan selalu dikembalikan MongoDB > 2. X
- includeLocs {Boolean, default. false}, sertakan bidang data lokasi di tingkat atas hasil MongoDB > 2. X
- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [[ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- x [angka] – arahkan untuk mencari pada sumbu x, pastikan indeks diurutkan dalam urutan yang sama
- y [angka] – arahkan untuk mencari pada sumbu y, pastikan indeks diurutkan dalam urutan yang sama
- [opsi] [objek] – opsi untuk peta mengurangi pekerjaan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode geoNear atau null jika terjadi error
batal
Contoh
Contoh kueri geoNear sederhana di beberapa dokumen
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_6
geoHaystackSearch
Jalankan pencarian geo menggunakan indeks geo haystack pada koleksi
Pilihan- maxDistance {Number}, sertakan hasil hingga maxDistance dari titik tersebut
- cari {Object}, filter hasilnya berdasarkan kueri
- batasi {Number}, jumlah maksimal hasil yang akan ditampilkan
- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [[ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- x [angka] – arahkan untuk mencari pada sumbu x, pastikan indeks diurutkan dalam urutan yang sama
- y [angka] – arahkan untuk mencari pada sumbu y, pastikan indeks diurutkan dalam urutan yang sama
- [opsi] [objek] – opsi untuk peta mengurangi pekerjaan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode geoHaystackSearch atau null jika terjadi error
batal
Contoh
Contoh kueri geoHaystackSearch sederhana di beberapa dokumen
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_7
indeks
Ambil semua indeks pada koleksi
indeks [panggilan balik] Argumen- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode indexes atau null jika terjadi error
batal
Contoh
Contoh mengambil indeks koleksi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_8
agregat
Jalankan pipa kerangka kerja agregasi terhadap koleksi, perlu MongoDB >= 2. 2
Pilihan- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [[ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- kursor {Objek}, kembalikan kueri sebagai kursor, pada 2. 6 > ia kembali sebagai kursor asli pada pre 2. 6 ia kembali sebagai kursor yang ditiru
- kursor. batchSize {Number}, ukuran batch untuk kursor
- out {String}, nama koleksi tempat menulis hasil dari agregasi [MongoDB 2. 6 atau lebih tinggi]. Peringatan setiap koleksi yang ada akan ditimpa
- jelaskan {Boolean, default. false}, jelaskan mengembalikan rencana eksekusi agregasi [memerlukan mongodb 2. 6 >]
- allowDiskUse {Boolean, default. false}, allowDiskUse memberi tahu server jika dapat menggunakan disk untuk menyimpan hasil sementara untuk agregasi [memerlukan mongodb 2. 6 >]
- array [array] – berisi semua perintah kerangka kerja agregasi untuk eksekusi
- [opsi] [objek] – opsi tambahan selama pembaruan
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode agregat atau null jika terjadi error
batal
Contoh
Panggil kerangka kerja agregasi dengan benar menggunakan saluran pipa dalam Array
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Only run the rest of the code if we have a mongodb server with version >= 1.9.1 db.open[function[err, db] { // Create a collection var collection = db.collection['keepGoingExample']; // Add an unique index to title to force errors in the batch insert collection.ensureIndex[{title:1}, {unique:true}, function[err, indexName] { // Insert some intial data into the collection collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"}], {w:1}, function[err, result] { // Force keep going flag, ignoring unique index issue collection.insert[[{name:"Jim"} , {name:"Sarah", title:"Princess"} , {name:'Gump', title:"Gump"}], {w:1, keepGoing:true}, function[err, result] { // Count the number of documents left [should not include the duplicates] collection.count[function[err, count] { assert.equal[3, count]; }] }]; }]; }]; }];_9Panggil kerangka agregasi dengan benar menggunakan pipa yang dinyatakan sebagai daftar argumen
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_0Panggil kerangka agregasi dengan benar menggunakan pipa yang dinyatakan sebagai daftar argumen
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_0Panggil kerangka agregasi dengan benar untuk mengembalikan kursor
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_2Panggil kerangka kerja agregasi dengan benar untuk mengembalikan kursor dan memanggil penjelasan
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_3Panggil kerangka agregasi dengan benar untuk mengembalikan kursor dengan batchSize 1 dan dapatkan hasil pertama menggunakan next
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_4Panggil kerangka agregasi dengan benar dan tulis hasilnya ke koleksi baru
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_5Gunakan allowDiskUse dengan benar saat melakukan agregasi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_6
statistik
Dapatkan semua statistik koleksi
Pilihan- skala {Angka}, bagi ukuran yang dikembalikan dengan nilai skala
- readPreference {String}, preferensi baca yang disukai, memerlukan['mongodb']. ReadPreference [[ReadPreference. UTAMA, Preferensi Baca. PRIMARY_PREFERRED, Preferensi Baca. SEKUNDER, Preferensi Baca. SECONDARY_PREFERRED, ReadPreference. TERDEKAT]
- [opsi] [objek] – opsi untuk perintah statistik
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Sedangkan parameter kedua akan berisi hasil dari metode stats atau null jika terjadi error
batal
Contoh
Contoh mengambil statistik koleksi
var Db = require['mongodb'].Db, MongoClient = require['mongodb'].MongoClient, Server = require['mongodb'].Server, ReplSetServers = require['mongodb'].ReplSetServers, ObjectID = require['mongodb'].ObjectID, Binary = require['mongodb'].Binary, GridStore = require['mongodb'].GridStore, Grid = require['mongodb'].Grid, Code = require['mongodb'].Code, BSON = require['mongodb'].pure[].BSON, assert = require['assert']; var db = new Db['test', new Server['localhost', 27017]]; // Establish connection to db db.open[function[err, db] { // Fetch a collection to insert document into db.collection["remove_all_documents_no_safe", function[err, collection] { // Insert a bunch of documents collection.insert[[{a:1}, {b:2}], {w:1}, function[err, result] { assert.equal[null, err]; // Remove all the document collection.remove[]; // Fetch all results collection.find[].toArray[function[err, items] { assert.equal[null, err]; assert.equal[0, items.length]; db.close[]; }]; }]; }] }];_7
initializeUnorderedBulkOp
Memulai operasi penulisan batch yang tidak sesuai pesanan. Semua operasi akan di-buffer ke dalam perintah insert/update/remove yang dieksekusi secara tidak berurutan
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- [opsi] [objek] – opsi untuk initializeUnorderedBatch
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Argumen kedua akan menjadi objek UnorderedBulkOperation
operasi massal tak terurut
initializeOrderedBulkOp
Memulai operasi penulisan massal pesanan, operasi akan dieksekusi secara berurutan sesuai urutan penambahannya, membuat operasi baru untuk setiap sakelar dalam jenis
Pilihan- w, {Nomor/String, > -1. 'mayoritas'. nama tag} perhatian penulisan untuk operasi di mana < 1 tidak ada pengakuan penulisan dan w >= 1, w = 'mayoritas' atau tag mengakui penulisan
- wtimeout, {Number, 0} menyetel batas waktu untuk menunggu masalah penulisan selesai [digabungkan dengan opsi w]
- fsync, [Boolean, default. false] menulis menunggu fsync sebelum kembali, dari MongoDB 2. 6 aktif, fsync tidak dapat digabungkan dengan jurnal
- j, [Boolean, default. false] tulis menunggu sinkronisasi jurnal sebelum kembali
- [opsi] [objek] – opsi untuk initializeOrderedBulkOp
- callback [fungsi] – ini akan dipanggil setelah menjalankan metode ini. Parameter pertama akan berisi objek Error jika terjadi error, atau null jika tidak. Argumen kedua akan menjadi objek OrderedBulkOperation
operasi massal yang dipesan
parallelCollectionScan
Mengembalikan N jumlah kursor paralel untuk koleksi yang memungkinkan pembacaan paralel seluruh koleksi. Tidak ada jaminan pemesanan untuk hasil yang dikembalikan