我想使用 mongodb 数据库,但我注意到有两个不同的数据库,它们有自己的网站和安装方法:mongodb 和 mongoose。所以我开始问自己这个问题:“我用哪一个?”。
所以为了回答这个问题,我问社区你是否可以解释这两者之间的区别是什么?如果可能的话利弊?因为他们真的和我很相似。
最佳答案
我假设您已经知道 MongoDB 是一个 NoSQL 数据库系统,它以 BSON 文档的形式存储数据。但是,您的问题是关于 Node.js 的包。
就 Node.js 而言,mongodb是用于与 mongodb 实例和 mongoose 交互的 native 驱动程序是 MongoDB 的对象建模工具。
mongoose
构建在 mongodb
驱动程序之上,为程序员提供了一种对其数据建模的方法。
编辑: 我不想评论哪个更好,因为这会使这个答案变得固执己见。不过,我将列出使用这两种方法的一些优点和缺点。
使用 mongoose
,用户可以为特定集合中的文档定义架构。它为MongoDB中数据的创建和管理提供了很多便利。不利的一面是,学习 mongoose 可能需要一些时间,并且在处理非常复杂的模式方面存在一些限制。
但是,如果您的集合架构不可预测,或者您希望在 Node.js 中获得类似 Mongo-shell 的体验,那么请继续使用 mongodb
驱动程序。这是最简单的拾取。这里的缺点是您必须编写大量代码来验证数据,并且出错的风险更高。
关于node.js - MongoDB 和 Mongoose 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28712248/