Docs Menu
Docs Home
/ / /
PHP 라이브러리 매뉴얼
/ /

MongoDB\Collection::insertOne()

MongoDB\Collection::insertOne()

문서 하나를 삽입합니다.

function insertOne(
array|object $document,
array $options = []
): MongoDB\InsertOneResult
$document : 배열|객체
컬렉션에 삽입할 문서입니다.
$options : 배열

원하는 옵션을 지정하는 배열입니다.

이름
유형
설명

bypassDocumentValidation

부울

true인 경우 쓰기 작업이 문서 수준 유효성 검사를 우회하도록 허용합니다. 기본값은 false입니다.

코덱

MongoDB\Codec\DocumentCodec

문서 인코딩 또는 디코딩에 사용할 유형 코덱으로 데이터를 인코딩합니다. 이 옵션은 typeMap 옵션과 상호 배타적입니다.

컬렉션의 코덱을 기본값으로 설정합니다. 기본 codec 옵션의 상속은 typeMap 옵션의 상속보다 우선합니다.

버전 1.17에 추가 되었습니다.

comment

혼합

사용자가 데이터베이스 프로파일러, currentOp 출력 및 로그를 통해 작업을 추적하는 데 도움이 되는 임의의 주석을 지정할 수 있습니다.

이 옵션을 사용하려면 MongoDB 6.0 이상에 연결해야 합니다. 이전 버전에 연결되어 있는 경우 서버 실행 시 예외를 반환합니다.

버전 1.13에 새로 추가되었습니다.

Session

작업과 연결할 클라이언트 세션입니다.

버전 1.3에 새로 추가되었습니다.

쓰기 고려

작업에 사용할 고려를 씁니다 . 기본값은 컬렉션의 쓰기 고려입니다.

트랜잭션의 일부로 개별 작업에 대한 쓰기 고려를 지정할 수 없습니다. 대신 트랜잭션을시작할 때 writeConcern 옵션을 설정합니다.

MongoDB\Driver\WriteResult MongoDB\InsertOneResult 를 캡슐화하는 객체 객체.

MongoDB\Exception\InvalidArgumentException 매개변수 또는 옵션의 구문 분석과 관련된 오류의 경우입니다.

쓰기 (write) 작업과 관련된 오류에 대한MongoDB\ 드라이버 \Exception\BulkWriteException. getWriteResult() 가 반환한 값을 검사하여 오류의 특성을 확인할 수 있습니다.

MongoDB\ 드라이버\Exception\RuntimeException 확장 수준의 다른 오류(예: 연결 오류).

MongoDB\ 드라이버\Exception\BulkWriteException 이 발생하면 getWriteResult() 를 호출하고 반환된 MongoDB\ 드라이버\WriteResult 객체 검사하여 오류의 특성을 확인할 수 있습니다.

예를 들어 쓰기 작업이 프라이머리 서버에 성공적으로 적용되었지만 쓰기 고려를 충족하지 못했을 수 있습니다(예시: 복제가 너무 오래 걸렸습니다). 또는 쓰기 작업이 완전히 실패했을 수 있습니다(예시: 고유 키 위반).

다음 작업은 test 데이터베이스의 users 컬렉션에 문서를 삽입합니다.

<?php
$collection = (new MongoDB\Client)->test->users;
$insertOneResult = $collection->insertOne([
'username' => 'admin',
'email' => '[email protected]',
'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()

이 페이지의 내용