RLM Mongo 컬렉션
Objective-C
@interface RLMMongoCollection : NSObject
Swift
@_nonSendable(_assumed) class RLMMongoCollection : NSObject, @unchecked Sendable
RLMMongoCollection
은(는) MongoDB collection을 나타냅니다.
RLMMongoDatabase
에서 인스턴스를 가져올 수 있습니다.
생성, 읽기, 업데이트 및 삭제 메서드를 사용할 수 있습니다.
Realm Cloud 서버에 대한 작업은 비동기적으로 수행됩니다.
참고
데이터를 읽거나 쓰려면 먼저 사용자가 로그인해야 합니다.사용법: RLMMongoClient *client = [self.app mongoClient:@"MongoDB1"]; RLMMongoDatabase *database = [client databaseWithName:@"test_data"]; RLMMongoCollection *collection = [database collectionWithName:@"Dog"]; [collection insertOneDocument:@{@"name": @"fido", @"breed": @"cane corso"} 완료:...];
다음의 사항도 참조하세요.
-
이 MongoDB 컬렉션의 이름입니다.
선언
Objective-C
@property (nonatomic, readonly) NSString *_Nonnull name;
Swift
var name: String { get }
-
제공된 값을 BSON에 인코딩하고 삽입합니다. 값에 식별자가 누락된 경우 식별자가 생성됩니다.
선언
Objective-C
- (void)insertOneDocument: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)document completion:(nonnull RLMMongoInsertBlock)completion;
매개변수
document
삽입할
Document
값입니다.completion
삽입을 시도한 결과입니다. 성공하면 삽입된 객체에 대한 ID가 반환됩니다.
-
제공된 값을 BSON에 인코딩하고 삽입합니다. 식별자가 누락된 값이 있으면 생성됩니다.
선언
Objective-C
- (void)insertManyDocuments: (nonnull NSArray<NSDictionary<NSString *, id<RLMBSON>> *> *) documents completion:(nonnull RLMMongoInsertManyBlock)completion;
매개변수
documents
삽입할 bson 배열의
Document
값입니다.completion
삽입 결과로, 문서 ID가 순서대로 삽입된 배열 을 반환합니다.
-
이 collection에서 제공된 필터와 일치하는 문서를 찾습니다.
선언
Objective-C
- (void)findWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument options:(nonnull RLMFindOptions *)options completion:(nonnull RLMMongoFindBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
as bson입니다.options
RLMFindOptions
명령을 실행할 때 사용합니다.completion
문서 또는 오류의 결과 bson 배열(발생한 경우)
-
이 collection에서 제공된 필터와 일치하는 문서를 찾습니다.
선언
Objective-C
- (void)findWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument completion:(nonnull RLMMongoFindBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
as bson입니다.completion
결과 BSON 배열을 string 또는 오류(발생 시 오류)로 표시합니다.
-
컬렉션 또는 보기에서 제공된 필터와 일치하는 문서 하나를 반환합니다. 여러 문서가 쿼리를 충족하는 경우, 이 메서드는 쿼리의 정렬 순서 또는 기본 순서에 따라 첫 번째 문서를 반환합니다.
선언
Objective-C
- (void)findOneDocumentWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument options:(nonnull RLMFindOptions *)options completion:(nonnull RLMMongoFindOneBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
as bson입니다.options
RLMFindOptions
명령을 실행할 때 사용합니다.completion
결과 bson 또는 오류(발생한 경우)
-
컬렉션 또는 보기에서 제공된 필터와 일치하는 문서 하나를 반환합니다. 여러 문서가 쿼리를 충족하는 경우, 이 메서드는 쿼리의 정렬 순서 또는 기본 순서에 따라 첫 번째 문서를 반환합니다.
선언
Objective-C
- (void)findOneDocumentWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument completion:(nonnull RLMMongoFindOneBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
as bson입니다.completion
결과 bson 또는 오류(발생한 경우)
-
이 collection에 대해 집계 프레임워크 파이프라인을 실행합니다.
선언
Objective-C
- (void)aggregateWithPipeline: (nonnull NSArray<NSDictionary<NSString *, id<RLMBSON>> *> *)pipeline completion:(nonnull RLMMongoFindBlock)completion;
매개변수
pipeline
수행할 애그리게이션 작업의 파이프라인을 포함하는
Documents
으)로 구성된 bson 배열입니다.completion
문서 또는 오류의 결과 bson 배열(발생한 경우)
-
이 collection에서 제공된 필터와 일치하는 문서 수를 계산합니다.
선언
Objective-C
- (void)countWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument limit:(NSInteger)limit completion:(nonnull RLMMongoCountBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
as bson입니다.limit
계산할 문서의 최대 개수
completion
필터와 일치하는 문서 수를 반환합니다.
-
이 collection에서 제공된 필터와 일치하는 문서 수를 계산합니다.
선언
Objective-C
- (void)countWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument completion:(nonnull RLMMongoCountBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
as bson입니다.completion
필터와 일치하는 문서 수를 반환합니다.
-
collection에서 일치하는 단일 문서를 삭제합니다.
선언
Objective-C
- (void)deleteOneDocumentWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument completion:(nonnull RLMMongoCountBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
as bson입니다.completion
삭제를 수행한 결과입니다. 삭제된 객체 수를 반환합니다.
-
여러 문서 삭제
선언
Objective-C
- (void)deleteManyDocumentsWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument completion:(nonnull RLMMongoCountBlock)completion;
매개변수
filterDocument
일치 기준을 나타내는 문서
completion
삭제를 수행한 결과입니다. 삭제 횟수를 반환합니다.
-
이 collection에 제공된 필터와 일치하는 단일 문서를 업데이트합니다.
선언
Objective-C
- (void)updateOneDocumentWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument updateDocument:(nonnull NSDictionary<NSString *, id<RLMBSON>> *) updateDocument upsert:(BOOL)upsert completion:(nonnull RLMMongoUpdateBlock)completion;
매개변수
filterDocument
일치 기준을 나타내는 bson
Document
입니다.updateDocument
일치하는 문서에 적용될 업데이트를 나타내는 bson
Document
입니다.upsert
true이면 쿼리와 일치하는 문서가 없는 경우 새 문서를 만듭니다.
completion
문서 업데이트 시도의 결과입니다.
-
이 collection에 제공된 필터와 일치하는 단일 문서를 업데이트합니다.
선언
Objective-C
- (void)updateOneDocumentWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument updateDocument:(nonnull NSDictionary<NSString *, id<RLMBSON>> *) updateDocument completion:(nonnull RLMMongoUpdateBlock)completion;
매개변수
filterDocument
일치 기준을 나타내는 bson
Document
입니다.updateDocument
일치하는 문서에 적용될 업데이트를 나타내는 bson
Document
입니다.completion
문서 업데이트 시도의 결과입니다.
-
이 collection에 제공된 필터와 일치하는 여러 문서를 업데이트합니다.
선언
Objective-C
- (void)updateManyDocumentsWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument updateDocument: (nonnull NSDictionary<NSString *, id<RLMBSON>> *) updateDocument upsert:(BOOL)upsert completion:(nonnull RLMMongoUpdateBlock)completion;
매개변수
filterDocument
일치 기준을 나타내는 bson
Document
입니다.updateDocument
일치하는 문서에 적용될 업데이트를 나타내는 bson
Document
입니다.upsert
true이면 쿼리와 일치하는 문서가 없는 경우 새 문서를 만듭니다.
completion
문서 업데이트 시도의 결과입니다.
-
이 collection에 제공된 필터와 일치하는 여러 문서를 업데이트합니다.
선언
Objective-C
- (void)updateManyDocumentsWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument updateDocument: (nonnull NSDictionary<NSString *, id<RLMBSON>> *) updateDocument completion:(nonnull RLMMongoUpdateBlock)completion;
매개변수
filterDocument
일치 기준을 나타내는 bson
Document
입니다.updateDocument
일치하는 문서에 적용될 업데이트를 나타내는 bson
Document
입니다.completion
문서 업데이트 시도의 결과입니다.
-
쿼리 필터를 기반으로 collection의 단일 문서를 업데이트하고 업데이트 전 또는 업데이트 후 형식으로 문서를 반환합니다.
updateOneDocument
과 달리 이 조치를 사용하면 동일한 명령을 사용하여 원자적으로 문서를 찾고, 업데이트하고, 반환할 수 있습니다. 이렇게 하면 별도의 찾기 작업과 업데이트 작업 간에 다른 업데이트 작업으로 인해 문서가 변경되는 위험을 방지할 수 있습니다.선언
Objective-C
- (void)findOneAndUpdateWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument updateDocument:(nonnull NSDictionary<NSString *, id<RLMBSON>> *) updateDocument options:(nonnull RLMFindOneAndModifyOptions *)options completion:(nonnull RLMMongoFindOneBlock)completion;
매개변수
filterDocument
일치 기준을 나타내는 bson
Document
입니다.updateDocument
일치하는 문서에 적용될 업데이트를 나타내는 bson
Document
입니다.options
RemoteFindOneAndModifyOptions
명령을 실행할 때 사용합니다.completion
문서 업데이트 시도의 결과입니다.
-
쿼리 필터를 기반으로 collection의 단일 문서를 업데이트하고 업데이트 전 또는 업데이트 후 형식으로 문서를 반환합니다.
updateOneDocument
과 달리 이 조치를 사용하면 동일한 명령을 사용하여 원자적으로 문서를 찾고, 업데이트하고, 반환할 수 있습니다. 이렇게 하면 별도의 찾기 작업과 업데이트 작업 간에 다른 업데이트 작업으로 인해 문서가 변경되는 위험을 방지할 수 있습니다.선언
Objective-C
- (void)findOneAndUpdateWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument updateDocument:(nonnull NSDictionary<NSString *, id<RLMBSON>> *) updateDocument completion:(nonnull RLMMongoFindOneBlock)completion;
매개변수
filterDocument
일치 기준을 나타내는 bson
Document
입니다.updateDocument
일치하는 문서에 적용될 업데이트를 나타내는 bson
Document
입니다.completion
문서 업데이트 시도의 결과입니다.
-
쿼리 필터를 기반으로 컬렉션의 단일 문서를 덮어쓰고 문서를 대체 전 또는 대체 후 형식으로 반환합니다.
updateOneDocument
과 달리 이 작업을 사용하면 동일한 명령을 사용하여 원자적으로 문서를 찾고, 바꾸고, 반환할 수 있습니다. 이렇게 하면 별도의 찾기 작업과 업데이트 작업 간에 다른 업데이트 작업으로 인해 문서가 변경되는 위험을 방지할 수 있습니다.선언
Objective-C
- (void)findOneAndReplaceWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument replacementDocument:(nonnull NSDictionary<NSString *, id<RLMBSON>> *) replacementDocument options:(nonnull RLMFindOneAndModifyOptions *)options completion:(nonnull RLMMongoFindOneBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
입니다.replacementDocument
대체를 설명하는
Document
입니다.options
RLMFindOneAndModifyOptions
명령을 실행할 때 사용합니다.completion
문서 교체 시도의 결과입니다.
-
쿼리 필터를 기반으로 컬렉션의 단일 문서를 덮어쓰고 문서를 대체 전 또는 대체 후 형식으로 반환합니다.
updateOneDocument
과 달리 이 작업을 사용하면 동일한 명령을 사용하여 원자적으로 문서를 찾고, 바꾸고, 반환할 수 있습니다. 이렇게 하면 별도의 찾기 작업과 업데이트 작업 간에 다른 업데이트 작업으로 인해 문서가 변경되는 위험을 방지할 수 있습니다.선언
Objective-C
- (void)findOneAndReplaceWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument replacementDocument:(nonnull NSDictionary<NSString *, id<RLMBSON>> *) replacementDocument completion:(nonnull RLMMongoFindOneBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
입니다.replacementDocument
업데이트 를 설명하는
Document
입니다.completion
문서 교체 시도의 결과입니다.
-
쿼리 필터를 기반으로 컬렉션에서 단일 문서를 제거하고 삭제되기 직전의 문서와 동일한 형식의 문서를 반환합니다.
deleteOneDocument
와 달리 이 작업을 사용하면 동일한 명령으로 문서를 원자적으로 찾고 삭제할 수 있습니다. 이렇게 하면 별도의 찾기 작업과 삭제 작업 간에 다른 업데이트 작업으로 인해 문서가 변경되는 위험을 방지할 수 있습니다.선언
Objective-C
- (void)findOneAndDeleteWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument options:(nonnull RLMFindOneAndModifyOptions *)options completion:(nonnull RLMMongoDeleteBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
입니다.options
RLMFindOneAndModifyOptions
명령을 실행할 때 사용합니다.completion
문서 삭제 시도의 결과입니다.
-
쿼리 필터를 기반으로 컬렉션에서 단일 문서를 제거하고 삭제되기 직전의 문서와 동일한 형식의 문서를 반환합니다.
deleteOneDocument
와 달리 이 작업을 사용하면 동일한 명령으로 문서를 원자적으로 찾고 삭제할 수 있습니다. 이렇게 하면 별도의 찾기 작업과 삭제 작업 간에 다른 업데이트 작업으로 인해 문서가 변경되는 위험을 방지할 수 있습니다.선언
Objective-C
- (void)findOneAndDeleteWhere: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument completion:(nonnull RLMMongoDeleteBlock)completion;
매개변수
filterDocument
쿼리와 일치해야 하는
Document
입니다.completion
문서 삭제 시도의 결과입니다.
-
collection에 대한 MongoDB change stream을 열어 변경 사항을 확인합니다. 결과 스트림은 구성된 MongoDB 규칙에 따라 활성 사용자에게 볼 권한이 있는 이 collection의 모든 이벤트에 대한 알림을 받습니다.
선언
Objective-C
- (nonnull RLMChangeStream *)watchWithDelegate: (nonnull id<RLMChangeEventDelegate>)delegate delegateQueue:(nullable dispatch_queue_t)queue;
매개변수
delegate
결과 change stream에서 이벤트 및 오류에 React 위임입니다.
queue
대기열이 제공되지 않은 경우 스트리밍 이벤트를 선택적 대기열로 전달합니다.
-
특정 문서의 변경 사항을 감시하기 위해 컬렉션에 대한 MongoDB 변경 스트림을 엽니다. 감시할 문서는 _id로 명시적으로 지정되어야 합니다.
선언
Objective-C
- (nonnull RLMChangeStream *) watchWithFilterIds:(nonnull NSArray<RLMObjectId *> *)filterIds delegate:(nonnull id<RLMChangeEventDelegate>)delegate delegateQueue:(nullable dispatch_queue_t)queue;
매개변수
filterIds
Collection에서 관찰할 ID의 목록입니다.
delegate
결과 change stream에서 이벤트 및 오류에 React 위임입니다.
queue
대기열이 제공되지 않은 경우 스트리밍 이벤트를 선택적 대기열로 전달합니다.
-
collection에 대한 MongoDB change stream을 열어 변경 사항을 확인합니다. 제공된 BSON 문서는 스트림에서 발생하는 변경 이벤트에 대한 일치 표현식 필터로 사용됩니다.
https://mongodb.com/ko-kr/docs/manual/reference/operator/aggregation/match/ 를 참조하세요. 일치 필터를 정의하는 방법에 대한 문서를 참조하세요.
ChangeEvents를 필터하다 하기 위해 일치 표현식 을 정의하는 것은 트리거에 대한 일치 표현식 을 정의하는 것과 유사합니다: https://mongodb.com/ko-kr/docs/ 영역/triggers/database-triggers/
선언
Objective-C
- (nonnull RLMChangeStream *) watchWithMatchFilter: (nonnull NSDictionary<NSString *, id<RLMBSON>> *)matchFilter delegate:(nonnull id<RLMChangeEventDelegate>)delegate delegateQueue:(nullable dispatch_queue_t)queue;
매개변수
matchFilter
수신 변경 이벤트에 적용할 $match 필터
delegate
결과 change stream에서 이벤트 및 오류에 React 위임입니다.
queue
대기열이 제공되지 않은 경우 스트리밍 이벤트를 선택적 대기열로 전달합니다.