MongoDB 系列文章:
前面文章首先介绍了 MongoDB 数据库系统的安装,接着介绍了 MongoDB 的 Shell 工具来操作数据库,掌握了命令行对数据库的增、删、改、查,四个基本操作。现在来介绍,如何用 JavaScript 编程语言来操作 MongoDB 数据库。
假设有一个编程任务,希望在 node.js 程序中将数据持久保存到 MongoDB 数据库中,请问这样的编程任务该如何实现呢?
下面咱们通过具体案例,展示用 JavaScript 程序实现对 MongoDB 数据库的增、删、改、查四个基本操作。当然,在操作之前,首先需要安装数据库操作的 Node.js 第三方模块:mongodb。
npm install mongodb
然后,编写下面的 opt-mongo.js 代码文件。
#!/usr/bin/node
var MongoClient = require('mongodb').MongoClient,
assert = require('assert');
var url = 'mongodb://localhost:27017/todo';
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
//db.collection('todo').insertOne({"item": "have break"});
db.collection('todo').updateOne({"item": "have breakfast"}, {"itrem": "have launch"});
//db.collection('todo').deleteOne({"item": "have break"});
find(db, function() {db.close();});
});
function find(db, cb) {
var cursor = db.collection('todo').find();
cursor.each(function(err, doc) {
if(doc !== null) { console.log(doc); } else { cb(); }
});
}
程序说明:
- 首先引用 MongoDB 的客户端,通过客户端可以和 MongoDB 服务器建立连接;
- 引用 assert 断言模块,判断连接是否出错;
- 定义变量 url 保存 MongoDB 服务器的地址,假设咱们操作的是 todo 待办事项列表的数据库;
- 调用客户端的 connect 方法,连接 MongoDB 数据库;
- 回调函数两个参数,第一个参数是 Error 对象,第二个参数是数据库对象;
- 增、删、改、查四个操作都在数据库对象上做操作;
- 先定义一个查询函数 find,两个参数,第一个参数是数据库对象,第二个参数是回调函数;
- find 函数中,你会发现 JavaScript 编程的 API 和 MongoDB Shell 的 API 几乎相同;
- find 函数定义好了,在连接方法的回调里面调用 find 方法;
- 执行程序,看一下数据库查询的效果;
- 然后,再查询语句前面分别添加:增、删和改,三条语句;
- 每添加一个语句,在命令行运行,查看效果;
- 注释掉语句,然后再增加下一条语句;
通过上面的案例代码,看到了对 MongoDB 数据库编程操作的简单和易用。这个文章只介绍了,增、删、改、查四个基本操作的 API,作为抛砖引玉。如果希望更进一步的学习,请参考 MongoDB API 的官方文档。Node.js 原生 API 没有关于数据库操作的模块,对于数据库操作都是使用第三方模块来完成。另外一个常用的第三方模块是 Mongoose 大家可以自行查阅相关资料。
如果这个文章对你有用,请点赞并收藏!