sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Existe un procedimiento en mongodb?

MongoDB no tiene un sentido real de los procedimientos almacenados. Tiene funciones del lado del servidor, sin embargo estas funciones:

  • No trabajar con fragmentación
  • Son lentos
  • Debe ser evaluado (Dr. Evil)
  • En realidad, solo están diseñados para usarse dentro de Map Reduces para evitar que tengas que alojar varias copias de código común en muchos lugares.

Sin embargo, puedes lograrlo con $where o eval ing un nombre de función real dentro de system.js . Pero estos en realidad no se ejecutan "del lado del servidor".

Usando un exec escriba el comando en su aplicación para llamar al shell tampoco será una buena idea. Los archivos de secuencias de comandos que ejecuta en shell son tanto del lado del cliente como de su propia aplicación, por lo que no tiene sentido.

MongoDB tampoco permite disparadores, sin embargo, están dentro de JIRA:https://jira.mongodb. org/navegar/SERVIDOR-124 pero no están programados. Deberá colocar disparadores en el lado del cliente dentro de su codificación.

NoSQL no es relacional. Es posible que desee leer sobre cómo diseñar un esquema adecuado para MongoDB, aquí hay un punto de partida:http://www.mongodb.org/display/DOCS/Schema+Design . Esto le enseñará la esencia de MongoDB y cómo elegir la estructura correcta.