MongoDB няма истинско усещане за съхранени процедури. Той има функции от страна на сървъра, но тези функции:
- Не работете с шардинг
- Са бавни
- Трябва да се оцени (д-р Зъл)
- Наистина са предназначени само за използване в Map Reduces, за да ви предотвратят необходимостта да съхранявате множество копия на общ код на много места.
Можете обаче да го постигнете с $where
или eval
въвеждане на действително име на функция в system.js
. Но тогава те всъщност не се изпълняват "от страната на сървъра".
Използване на exec
въведете команда в приложението си, за да извикате обвивката, също няма да е добра идея. Скрипт файловете, които изпълнявате в shell, са толкова клиентски, колкото и собственото ви приложение, така че това е просто безсмислено.
MongoDB също не позволява тригери, въпреки че те са в рамките на JIRA:https://jira.mongodb. org/browse/SERVER-124 но не са планирани. Ще трябва да поставите тригери от страната на клиента в рамките на кодирането си.
NoSQL не е релационен. Може да искате да прочетете как да проектирате подходяща схема за MongoDB, ето отправна точка:http://www.mongodb.org/display/DOCS/Schema+Design . Това ще ви научи на същността на MongoDB и как да изберете правилната структура.