Как создать хранимую процедуру на стороне сервера MongoDB [дублировать]

Следующая техника (или аналогичная) обычно используется для изменения строки в JavaScript:

// Don’t use this!
var naiveReverse = function(string) {
    return string.split('').reverse().join('');
}

На самом деле все ответы, опубликованные до сих пор, являются вариацией этого шаблона. Однако есть некоторые проблемы с этим решением. Например:

naiveReverse('foo          
53
задан Abe 6 October 2010 в 20:09
поделиться

2 ответа

Самое близкое к эквиваленту хранимой процедуры в mongodb хранится javascript. Хорошее введение в сохраненный javascript можно найти в этой статье в блоге Майка Дирольфа.

82
ответ дан Justin Dearing 19 August 2018 в 14:49
поделиться
  • 1
    В текущей реализации MongoDB сохраненный javascript является самым близким к хранимым процедурам, но я не уверен, что я дошел бы до его эквивалента. & Quot; +1 для полезной ссылки, хотя – Ari Patrick 12 October 2010 в 03:00
  • 2
    Ари согласился, что они не эквивалентны. – Justin Dearing 12 October 2010 в 03:02

Учтите, что согласно ссылка :

Не храните логику приложения в базе данных. Существуют ограничения производительности для работы JavaScript внутри MongoDB. Код приложения также наиболее эффективен, когда он совместно использует управление версиями с самим приложением.

Таким образом, в mongodb нет эквивалента для хранимой процедуры.

12
ответ дан guido mocha 19 August 2018 в 14:49
поделиться
  • 1
    Хорошая точка Гвидо, я полностью согласен! – user752746 23 January 2018 в 21:46
  • 2
    Что делать, если у вас есть большие объемы данных для обработки. В настоящее время у меня большая таблица в MSSQL. Мои хранимые процедуры делают тяжелый подъем, поэтому мне не нужно передавать все данные в приложение. Будет ли это хорошим случаем, чтобы сохранить некоторую логику в БД? – Jose Nunez 1 July 2018 в 23:12
Другие вопросы по тегам:

Похожие вопросы: