RMMongoCollection

Objective-C


@interface RLMMongoCollection : NSObject

Swift

@_nonSendable(_assumed) class RLMMongoCollection : NSObject, @unchecked Sendable

RLMMongoCollectionは MongoDB コレクションを表します。

インスタンスはRLMMongoDatabaseから取得できます。

作成、読み取り、更新、削除のメソッドが利用できます。

Realm Cloud サーバーに対する操作は非同期で実行されます。

注意

データの読み取りまたは書き込みを行う前に、ユーザーはログインする必要があります。
  • 使用法: RMMongoClient *client = [Self.app mongoClient:@"mongodb 1 ], RMMongoDatabase *データベース = [client databaseWithName:@"rest_data"])- RMMongoCollection *collection = [database collectionWithName:@"Dog"]# [collection insertOneDocument:@{@"name": @"fido", @"brewed": @"cane cores"}MongoDB 完了:

次も参照してください

RLMMongoClient, RLMMongoDatabase

  • この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 が順番に返されます

  • このコレクション内の指定されたフィルターに一致するドキュメントを検索します。

    宣言

    Objective-C

    - (void)findWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
              options:(nonnull RLMFindOptions *)options
           completion:(nonnull RLMMongoFindBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるBSONとしての Document

    options

    RLMFindOptions コマンドを実行するときに使用します。

    completion

    ドキュメントの結果としてのBSON配列やエラーが発生した場合は、

  • このコレクション内の指定されたフィルターに一致するドキュメントを検索します。

    宣言

    Objective-C

    - (void)findWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
           completion:(nonnull RLMMongoFindBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるBSONとしての Document

    completion

    結果としてのBSON配列( stringまたはエラー)

  • 指定されたフィルターに一致するコレクションまたはビューから 1 つのドキュメントを返します。 クエリを満たすドキュメントが複数ある場合、このメソッドではクエリのソート順または自然な順序に従って最初のドキュメントが返されます。

    宣言

    Objective-C

    - (void)findOneDocumentWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
                         options:(nonnull RLMFindOptions *)options
                      completion:(nonnull RLMMongoFindOneBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるBSONとしての Document

    options

    RLMFindOptions コマンドを実行するときに使用します。

    completion

    BSONまたは エラーが発生した場合

  • 指定されたフィルターに一致するコレクションまたはビューから 1 つのドキュメントを返します。 クエリを満たすドキュメントが複数ある場合、このメソッドではクエリのソート順または自然な順序に従って最初のドキュメントが返されます。

    宣言

    Objective-C

    - (void)findOneDocumentWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
                      completion:(nonnull RLMMongoFindOneBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるBSONとしての Document

    completion

    BSONまたは エラーが発生した場合

  • このコレクションに対して 集計フレームワーク パイプライン を実行します。

    宣言

    Objective-C

    - (void)aggregateWithPipeline:
                (nonnull NSArray<NSDictionary<NSString *, id<RLMBSON>> *> *)pipeline
                       completion:(nonnull RLMMongoFindBlock)completion;

    パラメーター

    pipeline

    実行される集計操作のパイプラインを含む Documents で構成されるBSON配列。

    completion

    ドキュメントの結果としてのBSON配列やエラーが発生した場合は、

  • 指定されたフィルターに一致するこのコレクション内のドキュメントの数をカウントします。

    宣言

    Objective-C

    - (void)countWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
                 limit:(NSInteger)limit
            completion:(nonnull RLMMongoCountBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるBSONとしての Document

    limit

    カウントするドキュメントの最大量

    completion

    フィルターに一致したドキュメントの数を返します。

  • 指定されたフィルターに一致するこのコレクション内のドキュメントの数をカウントします。

    宣言

    Objective-C

    - (void)countWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
            completion:(nonnull RLMMongoCountBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるBSONとしての Document

    completion

    フィルターに一致したドキュメントの数を返します。

  • コレクションから一致するドキュメントを 1 つ削除します。

    宣言

    Objective-C

    - (void)deleteOneDocumentWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
                        completion:(nonnull RLMMongoCountBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるBSONとしての Document

    completion

    削除を実行した結果。 削除されたオブジェクトの数を返します

  • 複数のドキュメントを削除します

    宣言

    Objective-C

    - (void)deleteManyDocumentsWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
                          completion:(nonnull RLMMongoCountBlock)completion;

    パラメーター

    filterDocument

    一致条件を表すドキュメント

    completion

    削除を実行した結果。 削除のカウントを返します

  • このコレクション内の指定されたフィルターに一致する 1 つのドキュメントを更新します。

    宣言

    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

    ドキュメントを更新しようとした試行の結果。

  • このコレクション内の指定されたフィルターに一致する 1 つのドキュメントを更新します。

    宣言

    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

    ドキュメントを更新しようとした試行の結果。

  • このコレクション内の指定されたフィルターに一致する複数のドキュメントを更新します。

    宣言

    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

    ドキュメントを更新しようとした試行の結果。

  • このコレクション内の指定されたフィルターに一致する複数のドキュメントを更新します。

    宣言

    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

    ドキュメントを更新しようとした試行の結果。

  • クエリフィルターに基づいてコレクション内の 1 つのドキュメントを更新し、更新前または更新後の形式でドキュメントを返します。 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

    ドキュメントを更新しようとした試行の結果。

  • クエリフィルターに基づいてコレクション内の 1 つのドキュメントを更新し、更新前または更新後の形式でドキュメントを返します。 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

    ドキュメントを更新しようとした試行の結果。

  • クエリフィルターに基づいてコレクション内の 1 つのドキュメントを上書きし、置換前または置換後の形式でドキュメントを返します。 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

    ドキュメントを置き換えようとした試行の結果。

  • クエリフィルターに基づいてコレクション内の 1 つのドキュメントを上書きし、置換前または置換後の形式でドキュメントを返します。 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

    ドキュメントを置き換えようとした試行の結果。

  • クエリフィルターに基づいてコレクションから 1 つのドキュメントを削除し、削除される 直前 のドキュメントと同じ形式のドキュメントを返します。 deleteOneDocumentとは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索して削除できます。 これにより、検索操作と削除操作が個別に行われる間に他の更新操作でドキュメントが変更されるリスクを回避できます。

    宣言

    Objective-C

    - (void)findOneAndDeleteWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
                          options:(nonnull RLMFindOneAndModifyOptions *)options
                       completion:(nonnull RLMMongoDeleteBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるDocument

    options

    RLMFindOneAndModifyOptions コマンドを実行するときに使用します。

    completion

    ドキュメントを削除しようとした試行の結果。

  • クエリフィルターに基づいてコレクションから 1 つのドキュメントを削除し、削除される 直前 のドキュメントと同じ形式のドキュメントを返します。 deleteOneDocumentとは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索して削除できます。 これにより、検索操作と削除操作が個別に行われる間に他の更新操作でドキュメントが変更されるリスクを回避できます。

    宣言

    Objective-C

    - (void)findOneAndDeleteWhere:
                (nonnull NSDictionary<NSString *, id<RLMBSON>> *)filterDocument
                       completion:(nonnull RLMMongoDeleteBlock)completion;

    パラメーター

    filterDocument

    クエリに一致する必要があるDocument

    completion

    ドキュメントを削除しようとした試行の結果。

  • コレクションに対して MongoDB 変更ストリーム を開き、変更を監視します。 結果のストリームには、構成された MongoDB ルールに基づいて参照する権限を持つこのコレクションのすべてのイベントが通知されます。

    宣言

    Objective-C

    - (nonnull RLMChangeStream *)watchWithDelegate:
                                     (nonnull id<RLMChangeEventDelegate>)delegate
                                     delegateQueue:(nullable dispatch_queue_t)queue;

    パラメーター

    delegate

    結果として得られる変更ストリームからのイベントとエラーに対応する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

    監視するコレクション内の _ids のリスト。

    delegate

    結果として得られる変更ストリームからのイベントとエラーに対応するReact 。

    queue

    ストリーミング イベントをオプションのキューにディスパッチします。キューが提供されない場合は、メイン キューが使用されます。

  • コレクションに対して MongoDB 変更ストリーム を開き、変更を監視します。 提供された BSON ドキュメントは、ストリームから取得される変更イベントのマッチ式フィルターとして使用されます。

    https://mongodb.com/java-j/docs/manual/reference/operator/aggregation/match/を参照してください 一致フィルターの定義方法に関するドキュメントについては、 を参照してください。

    ChangeEvents をフィルタリングするためのマッチ式の定義は、trigger のマッチ式を定義するのと同様です。 https://mongodb.com/java-j/docs/realm/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

    結果として得られる変更ストリームからのイベントとエラーに対応するReact 。

    queue

    ストリーミング イベントをオプションのキューにディスパッチします。キューが提供されない場合は、メイン キューが使用されます。