
mongoose 和 mongodb 都是 javascript 中处理数据库不可或缺的一部分,但它们有不同的用途:
1.mongodb:
类型:nosql 数据库。角色:mongodb 是一个数据库管理系统 (dbms),它以灵活的、类似 json 的文档(bson 格式)存储数据。它提供与数据交互的核心功能,例如存储、检索和更新文档。用例:直接用于存储和管理不需要固定模式的大型数据集。
示例:
怪兽智能全息舱
专业的AI数字人平台,定制数字人专属IP
16 查看详情
db.collection('users').find({ name: 'john' })
2. 猫鼬:
类型:mongodb 的 odm(对象数据建模)库。角色:mongoose 是 mongodb 之上的更高级别的抽象。它提供了一个基于模式的解决方案来对应用程序数据进行建模,提供结构、验证和查询构建机制。用例:当您想要在数据上强加结构(模式)并强制验证时,这是理想的选择。
示例:
const userSchema = new mongoose.Schema({ name: String, age: Number, }); const User = mongoose.model('User', userSchema); User.find({ name: 'John' });
主要区别:
模式执行:mongodb 本身是无模式的,而 mongoose 允许您定义模式,为您的数据提供结构。抽象:mongodb 查询更加底层,而 mongoose 提供了更加用户友好的 api,具有中间件、钩子等功能,以及更强大的查询功能。验证:mongoose 支持内置的数据验证,可以更轻松地保持一致的数据完整性。
总而言之,mongodb 本身就是数据库,而 mongoose 是与 mongodb 交互的工具,为模式管理和验证提供附加功能。
以上就是MongoDB 与 Mongoose:了解它们的角色和差异的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/898657.html
微信扫一扫
支付宝扫一扫