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

MongoDB\Collection::insertOne()

MongoDB\Collection::insertOne()

ドキュメントを 1 つ挿入します。

function insertOne(
array|object $document,
array $options = []
): MongoDB\InsertOneResult
$document : array|object
コレクションに挿入するドキュメント。
$options : 配列

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

名前
タイプ
説明

bypassDocumentValidation

ブール値

trueの場合、書込み操作によってドキュメント レベルの検証を回避できます。 デフォルトはfalseです。

コーデック

MongoDB\Codec\DocumentCodec

ドキュメントのエンコードまたはデコードに使用するコーデック。 このオプションはtypeMapオプションと相互に排他的です。

デフォルトはコレクションのコーデック。 デフォルトのcodecオプションの継承は、 typeMapオプションの継承よりも優先されます。

バージョン 1.17 の新機能

comment

混合

ユーザーが任意のコメントを指定して、 データベースプロファイラcurrentOp出力、ログから操作を追跡できるようにします。

このオプションを使用するには、 MongoDB 6.0 以降に接続する必要があります。以前のバージョンに接続している場合、サーバーは実行時に例外を返します。

バージョン 1.13 の新機能

セッション

操作に関連付けるクライアント セッション。

バージョン 1.3 で追加

writeConcern

操作に使用する書込み保証 ( write concern )。 コレクションの書込み保証 (write concern) のデフォルトです。

トランザクションの一部である個々の操作に対して書込み保証 (write concern) を指定することはできません。 代わりに 、トランザクションを開始する ときにwriteConcern オプションを設定します。

MongoDB\InsertOneResultMongoDB\Driver\WriteResult をカプセル化する オブジェクト オブジェクト。

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

書込み (write)操作に関連するエラーについては、 MongoDB $Driver\Exception\BulkWriteException を参照してください。getWriteResult() によって返される値を調べて、エラーの内容を判断できます。

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

MongoDB\Driver\Exception\BulkWriteException がスローされた場合は、 getWriteResult() を呼び出し、返されたMongoDB\Driver\WriteResultオブジェクトを調べて、エラーの内容を判断できます。

例えば、書込み (write) 操作はプライマリ サーバーに正常に適用されたが、書込み保証 (write concern) を満たすには失敗した場合(例: レプリケーションに時間がかかりすぎました)。 あるいは、書込み (write) 操作が完全に失敗した可能性があります(例: 一意なキー違反)。

次の操作は、 testデータベース内のusersコレクションにドキュメントを挿入します。

<?php
$collection = (new MongoDB\Client)->test->users;
$insertOneResult = $collection->insertOne([
'username' => 'admin',
'email' => 'admin@example.com',
'name' => 'Admin User',
]);
printf("Inserted %d document(s)\n", $insertOneResult->getInsertedCount());
var_dump($insertOneResult->getInsertedId());

出力は次のようになります。

Inserted 1 document(s)
object(MongoDB\BSON\ObjectId)#11 (1) {
["oid"]=>
string(24) "579a25921f417dd1e5518141"
}

戻る

insertMany()

項目一覧