首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mongodb中是否存在过程

mongodb中是否存在过程
EN

Stack Overflow用户
提问于 2012-08-30 21:05:25
回答 2查看 205关注 0票数 0

我是mongodb (java)的新手。

我需要使用类似于关系型数据库中的过程来执行命令列表(关系型数据库中的查询)。

在mongodb中可能吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-30 21:16:32

MongoDB没有真正意义上的存储过程。它有服务器端的功能,但是这些功能:

  • Do not work with sharding
  • Are slow
  • 必须求值(Dr. Evil)
  • 实际上仅设计为在Map Reduce中使用,以避免您不得不在许多地方存放通用代码的多个副本。

< code >F29

但是,您可以使用$whereevalsystem.js中使用实际的函数名来实现此目的。但是这些实际上并不运行“服务器端”。

在你的应用中使用exec类型命令来调用外壳也不是一个好主意。您在shell中运行的脚本文件与您自己的应用程序一样都是客户端,所以这是没有意义的。

MongoDB也不允许触发器,但是它们在JIRA:https://jira.mongodb.org/browse/SERVER-124中,但是没有被调度。你需要在你的代码中把触发器放在客户端。

关系中的

查询

NoSQL不是关系型的。您可能想要阅读有关如何为MongoDB设计合适的模式的资料,这里是一个起点:http://www.mongodb.org/display/DOCS/Schema+Design。这将教你MongoDB的本质以及如何选择正确的结构。

票数 2
EN

Stack Overflow用户

发布于 2012-08-30 21:08:55

您可以创建服务器端javascript函数,是的。但我建议你不要这么做,因为这将是

  1. 非常慢;
  2. 不受版本控制。

阅读更多:http://www.mongodb.org/display/DOCS/Server-side+Code+Execution#Server-sideCodeExecution-Storingfunctionsserverside

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12197546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档