Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Docs Menu
Docs Home
/ / /
PHP ライブラリ マニュアル
/ /

MongoDB\ClientBulkWrite::updateOne()

バージョン2.1の新機能

MongoDB\ClientBulkWrite::updateOne()

Specify an update operation in the bulk write command for the first matching document. This method returns the MongoDB\ClientBulkWrite instance on which it's called.

function updateOne(
array|object $filter,
array|object $update,
array $options = []
): self
$filter : array|object
更新するドキュメントを指定するフィルター条件。
$update : array|object
更新するフィールドと値の組み合わせと、関連する更新演算子。$update は MongoDB の 更新演算子 を使用します。このパラメーターとして集計パイプラインを渡すことができます。
$options : 配列

必要なオプションを指定する配列。

名前
タイプ
説明

arrayFilters

配列

配列フィールドの更新操作でどの配列要素を変更するかを決定するフィルタードキュメントの配列。

collation

array|object

照合順序を指定すると、大文字や小文字、アクセント記号など、string を比較するための言語独自のルールを指定できます。 照合を指定する場合、 localeフィールドは必須です。その他の照合フィールドはすべてオプションです。 フィールドの説明については、 「照合ドキュメント」 を参照してください。

照合が指定されていないが、コレクションにデフォルトの照合がある場合、操作はコレクションに指定された照合を使用します。 コレクションにも操作にも照合が指定されていない場合、MongoDB では以前のバージョンで使用されていた単純なバイナリ比較によって string が比較されます。

hint

string|array|object

使用するインデックス。 インデックス名を string またはインデックス キー パターンをドキュメントとして指定します。 指定すると、クエリ システムはヒント指定したインデックスを使用するプランのみを考慮します。

sort

array|object

一致したドキュメントの順序の並び替え指定。このオプションを に設定すると、サーバーが更新操作を実行する前に、一致したドキュメントに順序を適用します。

upsert

ブール値

trueに設定すると、クエリ条件に一致するドキュメントがない場合に新しいドキュメントが作成されます。 デフォルト値はfalseで、一致するものが見つからない場合は新しいドキュメントを挿入しません。

MongoDB\Exception\UnsupportedExceptionオプションが使用され、選択したサーバーでサポートされていない場合(例: collationreadConcernwriteConcern )。

MongoDB\Exception\InvalidArgumentException は、パラメータまたはオプションの解析に関連するエラーの場合は です。

MongoDB$Driver\Exception\BulkWriteCommandException 書込み (write)操作に関連するエラーの場合getWriteErrors() によって返される値を調べて、エラーの内容を判断できます。

MongoDB\Driver\Exception\RuntimeException 拡張レベルのその他のエラー(例:)。

クエリ条件を評価する際、MongoDB は BSON types の独自の比較ルール に従って型と値を比較します。これは PHP の 比較と は異なります と 型の調整 ルール。特殊な BSON 型と一致する場合、クエリ条件はそれぞれの BSON クラス を使用する必要があります 拡張機能(例:MongoDB\BSON \ObjectId ObjectIdを使用 )

MongoDB\Driver\Exception\BulkWriteCommandException がスローされた場合は、 getWriteErrors() を呼び出し、返された配列の情報を調べて、エラーの内容を判断できます。

例、書込み (write)操作はプライマリサーバーに正常に適用されたが、書込み保証 (write concern)を満たすには失敗した場合があります。あるいは、一意なキー制約に違反する例、書込み (write)操作が完全に失敗した可能性もあります。

  • 一括書き込み操作ガイドの「クライアント一括書き込み」セクション

戻る

updateMany()

項目一覧