@LukeJL:
Szybkie proste konsolowe: 3 x to samo
let mongoClient = require('mongodb').MongoClient;
let url = "mongodb://localhost:27017";
let options = {useUnifiedTopology: true};
mongoClient.connect(url, options, (error, connection) => {
if (error) throw error;
let collection = connection.db('business').collection("employees");
let cursor = collection.find({"address.country": "Poland"})
.project({_id: 0})
.limit(3);
cursor.toArray((err, documents) => {
if (err) {
connection.close(err => {
if (err) {
throw err;
}
});
throw err;
}
documents.forEach(e => console.log(e));
connection.close(err => {
if (err) {
throw err;
}
});
})
});
let mongoClient = require('mongodb').MongoClient;
let url = "mongodb://localhost:27017";
let options = {useUnifiedTopology: true};
function getConnection(client, uri, opt) {
return new Promise((resolve, reject) => {
client.connect(uri, opt, (err, connection) => {
if (err) {
reject(err);
} else {
resolve(connection);
}
});
})
}
function getDocuments(cursor) {
return new Promise((resolve, reject) => {
cursor.toArray((error, documents) => {
if (error) {
reject(error);
} else {
resolve(documents);
}
})
});
}
getConnection(mongoClient, url, options)
.then(connection => {
let collection = connection.db('business').collection('employees');
return collection.find({"address.country": "Poland"}).project({_id: 0}).limit(3);
})
.then(cursor => getDocuments(cursor))
.then(array => array.forEach(e => console.log(e)))
.catch(err => console.log(err));
let mongoClient = require('mongodb').MongoClient;
let url = "mongodb://localhost:27017";
let options = {useUnifiedTopology: true};
const getConnection = (client, uri, opt) => {
return new Promise((resolve, reject) => {
client.connect(uri, opt, (err, connection) => {
if (err) {
reject(err);
} else {
resolve(connection);
}
});
});
};
const getDocuments = (query) => {
return new Promise((resolve, reject) => {
query.toArray((error, documents) => {
if (error) {
reject(error);
} else {
resolve(documents);
}
})
});
}
const executeQuery = async (clientDb, uriDb, optDb) => {
let connection;
let documents;
try {
connection = await getConnection(clientDb, uriDb, optDb);
let collection = connection.db('business').collection('employees');
let query = collection.find({"address.country": "Poland"}).project({_id: 0}).limit(3);
documents = await getDocuments(query);
} catch (e) {
console.log(e);
} finally {
connection.close(err => {
if (err) throw err;
});
}
documents.forEach(e => console.log(e));
}
executeQuery(mongoClient, url, options)
.catch(e => console.log(e));