문서 홈 → 애플리케이션 개발 → MongoDB 매뉴얼
서버에 JavaScript 함수 저장
참고
애플리케이션 로직을 데이터베이스에 저장할 수 없습니다. MongoDB에서 JavaScript를 실행하려면 성능 제한이 있습니다. 또한 애플리케이션 코드는 일반적으로 애플리케이션 자체와 버전 제어를 공유할 때 가장 효과적으로 사용할 수 있습니다.
재사용을 위해 JavaScript 함수를 저장할 수 있는 특별 시스템 컬렉션 system.js
가 있습니다.
다음 예시와 같이 db.collection.insertOne()
을 사용하여 함수를 저장할 수 있습니다.
db.system.js.insertOne( { _id: "echoFunction", value : function(x) { return x; } } ); db.system.js.insertOne( { _id : "myAddFunction" , value : function (x, y){ return x + y; } } );
_id
필드는 함수 이름을 보유하며 데이터베이스마다 고유하게 설정됩니다.value
필드에는 함수 정의가 포함됩니다.
BSON 유형으로 저장된 이러한 함수는 mapReduce
및 $where
등 모든 JavaScript 맥락에서 사용할 수 있습니다.
그러나 더 이상 사용되지 않는 BSON 유형 JavaScript(범위 포함) 로 저장된 함수는 mapReduce
및 $where
에서 사용할 수 없습니다.