MongoDB Driver API for Node.js (original) (raw)

Index

lib/admin.js

The Admin class is an internal class that allows convenient access to
the admin functionality and commands for MongoDB.

ADMIN Cannot directly be instantiated

Example


const MongoClient = require('mongodb').MongoClient;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';


// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

// Use the admin database for the operation

const adminDb = client.db(dbName).admin();


// List all the available databases

adminDb.listDatabases(function(err, dbs) {

test.equal(null, err);

test.ok(dbs.databases.length > 0);

client.close();

});

});

lib/aggregation_cursor.js

The AggregationCursor class is an internal class that embodies an aggregation cursor on MongoDB
allowing for iteration over the results returned from the underlying query. It supports
one by one document iteration, conversion to an array or can be iterated as a Node 4.X
or higher stream

AGGREGATIONCURSOR Cannot directly be instantiated

Example


const MongoClient = require('mongodb').MongoClient;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

// Create a collection we want to drop later

const col = client.db(dbName).collection('createIndexExample1');

// Insert a bunch of documents

col.insert([{a:1, b:1}

, {a:2, b:2}, {a:3, b:3}

, {a:4, b:4}], {w:1}, function(err, result) {

test.equal(null, err);

// Show that duplicate records got dropped

col.aggregation({}, {cursor: {}}).toArray(function(err, items) {

test.equal(null, err);

test.equal(4, items.length);

client.close();

});

});

});

lib/collection.js

The Collection class is an internal class that embodies a MongoDB collection
allowing for insert/update/remove/find and other command operation on that MongoDB collection.

COLLECTION Cannot directly be instantiated

Example


const MongoClient = require('mongodb').MongoClient;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

// Create a collection we want to drop later

const col = client.db(dbName).collection('createIndexExample1');

// Show that duplicate records got dropped

col.find({}).toArray(function(err, items) {

test.equal(null, err);

test.equal(4, items.length);

client.close();

});

});

lib/command_cursor.js

The CommandCursor class is an internal class that embodies a
generalized cursor based on a MongoDB command allowing for iteration over the
results returned. It supports one by one document iteration, conversion to an
array or can be iterated as a Node 0.10.X or higher stream

CommandCursor Cannot directly be instantiated

Example


const MongoClient = require('mongodb').MongoClient;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

// Create a collection we want to drop later

const col = client.db(dbName).collection('listCollectionsExample1');

// Insert a bunch of documents

col.insert([{a:1, b:1}

, {a:2, b:2}, {a:3, b:3}

, {a:4, b:4}], {w:1}, function(err, result) {

test.equal(null, err);

// List the database collections available

db.listCollections().toArray(function(err, items) {

test.equal(null, err);

client.close();

});

});

});

lib/cursor.js

The Cursor class is an internal class that embodies a cursor on MongoDB
allowing for iteration over the results returned from the underlying query. It supports
one by one document iteration, conversion to an array or can be iterated as a Node 4.X
or higher stream

CURSORS Cannot directly be instantiated

Example


const MongoClient = require('mongodb').MongoClient;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

// Create a collection we want to drop later

const col = client.db(dbName).collection('createIndexExample1');

// Insert a bunch of documents

col.insert([{a:1, b:1}

, {a:2, b:2}, {a:3, b:3}

, {a:4, b:4}], {w:1}, function(err, result) {

test.equal(null, err);

// Show that duplicate records got dropped

col.find({}).toArray(function(err, items) {

test.equal(null, err);

test.equal(4, items.length);

client.close();

});

});

});

lib/db.js

The Db class is a class that represents a MongoDB Database.

Example


const MongoClient = require('mongodb').MongoClient;

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

// Select the database by name

const testDb = client.db(dbName);

client.close();

});

lib/gridfs/grid_store.js

GridFS is a tool for MongoDB to store files to the database.
Because of the restrictions of the object size the database can hold, a
facility to split a file into several chunks is needed. The GridStore
class offers a simplified api to interact with files while managing the
chunks of split files behind the scenes. More information about GridFS can be
found here.

Example


const MongoClient = require('mongodb').MongoClient;

const GridStore = require('mongodb').GridStore;

const ObjectID = require('mongodb').ObjectID;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

const db = client.db(dbName);

const gridStore = new GridStore(db, null, "w");

gridStore.open(function(err, gridStore) {

gridStore.write("hello world!", function(err, gridStore) {

gridStore.close(function(err, result) {

// Let's read the file using object Id

GridStore.read(db, result._id, function(err, data) {

test.equal('hello world!', data);

client.close();

test.done();

});

});

});

});

});

lib/mongo_client.js

The MongoClient class is a class that allows for making Connections to MongoDB.

Examples


// Connect using a MongoClient instance

const MongoClient = require('mongodb').MongoClient;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

const mongoClient = new MongoClient(url);

mongoClient.connect(function(err, client) {

const db = client.db(dbName);

client.close();

});


// Connect using the MongoClient.connect static method

const MongoClient = require('mongodb').MongoClient;

const test = require('assert');

// Connection url

const url = 'mongodb://localhost:27017';

// Database Name

const dbName = 'test';

// Connect using MongoClient

MongoClient.connect(url, function(err, client) {

const db = client.db(dbName);

client.close();

});

lib/topologies/mongos.js

The Mongos class is a class that represents a Mongos Proxy topology and is
used to construct connections.

Mongos Should not be used, use MongoClient.connect

lib/topologies/replset.js

The ReplSet class is a class that represents a Replicaset topology and is
used to construct connections.

ReplSet Should not be used, use MongoClient.connect

lib/topologies/server.js

The Server class is a class that represents a single server topology and is
used to construct connections.

Server Should not be used, use MongoClient.connect