我是 mongodb 的 super 新手。我正在使用 mongoose 从 node.js 访问 mongodb,并且知道如何让事情正常工作,但我认为我不明白为什么它会以这种方式工作。
最重要的是,当 mongodb 的突出特点之一是它没有模式时,我不明白为什么 mongoose 有“模式”。有人可以启发我吗?谢谢。
最佳答案
没有架构的数据是无用的。你从 MongoDB 得到一个文档,你用它做什么?阅读一些领域?您需要知道这些字段的名称、类型和含义。这是一个架构。
当人们说 MongoDB “没有模式”时,他们的真正意思是它不像 SQL 数据库那样强制执行模式。 MongoDB 将模式问题推到您的应用程序级别,您可以更灵活地处理它们。例如,为了向您的文档添加一个新字段,您不需要对您的集合执行全有或全无的 ALTER
— 可能有数百万个条目。您只需将该字段添加到您的 ODM (Mongoose) 架构中即可。
关于node.js - 当 mongodb 的好处应该是无模式时,为什么 mongoose 使用模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13107976/