0.0.4 • Published 4 years ago
mdb-driver v0.0.4
mdb-driver
Node.js npm package for works with mongodb driver >= 4.2 version
install
npm i mdb-driver
use
listDatabases
const Mdb = require('mdb-driver');
const db = new Mdb('mongodb://localhost:27017');
(async () => {
let dbs = db.listDatabases();
console.log(await dbs);
})();
listCollections
let listCollections = db.listCollections('db_name');
(async () => {
console.log(await listCollections);
})();
findOne
let findOneResult = db.findOne({
dbName: 'test',
collection: 'users',
query: {
title: "Username"
},
options: {
sort: {
age: -1
},
projection: {
_id: 0,
age: 1,
phone: 1
},
}
});
(async () => {
console.log(await findOneResult);
})();
find
let resultArray = db.find({
dbName: 'test',
collection: 'users',
query: {
age: {
$lt: 15
}
},
options: {
sort: {
name: 1
},
projection: {
_id: 0,
name: 1,
phone: 1
},
}
});
(async () => {
console.log(await resultArray);
})();
insertOne
let insertOneResult = db.insertOne({
dbName: 'test',
collection: 'users',
document: {
{
name: 'Bob',
age: 31,
phone: 6500000000
}
}
})
insertMany
let insertMany = db.insertMany({
dbName: 'test',
collection: 'users',
documents: [{
name: 'Nikoly',
age: 27,
phone: 6500000009
},
{
name: 'Mark',
age: 55,
phone: 6500000007
},
{
name: 'Givi',
age: 62,
phone: 6500000005
}
],
options: {
ordered: true
}
})
updateOne
let updateOneResult = db.updateOne({
dbName: 'test',
collection: 'users',
filter: {
name: 'Givi'
},
update: {
$set: {
age: 63
}
},
options: {
// this option instructs the method to create a document if no documents match the filter
upsert: false
}
})
updateMany
let updateManyResult = db.updateMany({
dbName: 'test',
collection: 'users',
filter: {
birthday: toDay
},
update: {
$inc: { //https://docs.mongodb.com/manual/reference/operator/update-field/
age: 1
}
}
})
replaceOne
let replaceOneResult = db.replaceOne({
dbName: 'test',
collection: 'users',
query: {
name: 'Bob'
},
replacement: {
phone: 7500000000
},
options: {
// create a document if no documents match the query
upsert: true,
}
})
deleteOne
let deleteOneResult = db.deleteOne({
dbName: 'test',
collection: 'users',
query: {
phone: {
$type: "string"
}
}
})
deleteMany
let deleteManyResult = db.deleteMany({
dbName: 'test',
collection: 'users',
query: {
age: {
$gte: 80 //https://docs.mongodb.com/manual/reference/operator/query-comparison/
}
}
})
other
let res;
res = estimatedDocumentCount({
dbName: 'test',
collection: 'users'
});
res = countDocuments({
dbName: 'test',
collection: 'users',
query: {
age: {
$in: [18, 65]
}
}
});
db.distinct({//https://docs.mongodb.com/drivers/node/usage-examples/distinct
dbName,
collection,
field,
query
})