나는 내 자신의 드라이버를 쓰고있어 와이어 프로토콜을 통해이 작업을 수행하는 방법에 관심이 있습니다. PHP가 _id 필드를 포함하도록 배열을 자동으로 수정하는 것 같습니다. 얼마나 구체적으로 그렇게합니까? mongod 서버에 어떤 명령/쿼리가 전송됩니까?MongoDB : 마지막 삽입물의 _id를 얻으십시오
도움을 주시면 감사하겠습니다.
나는 내 자신의 드라이버를 쓰고있어 와이어 프로토콜을 통해이 작업을 수행하는 방법에 관심이 있습니다. PHP가 _id 필드를 포함하도록 배열을 자동으로 수정하는 것 같습니다. 얼마나 구체적으로 그렇게합니까? mongod 서버에 어떤 명령/쿼리가 전송됩니까?MongoDB : 마지막 삽입물의 _id를 얻으십시오
도움을 주시면 감사하겠습니다.
드라이버가 마지막 삽입물의 _id를 제공해야하는 경우, 클라이언트에서 _id를 생성하는 것이 가장 쉬운 방법은 프로그래머가 가져온 문서의 일부가 아닌 경우입니다.
나는 PHP 드라이버에 대해 알고 있지만 ID가 제공되지 않으면, 자바 드라이버의 코드를 통과하지 않는, this code is executed (라인 169) :
public ObjectId() {
_time = (int) (System.currentTimeMillis()/1000);
_machine = _genmachine;
_inc = _nextInc.getAndIncrement();
_new = true;
}
는 새 기본을 반환 ObjectId
.
10Gen의 드라이버 중 많은 수가 클라이언트에서 생성됩니다 (드라이버의 오픈 소스 구현을 보면 알 수 있듯이). 그게 무슨 문제 야? 너 뭐 해봤 니? 어떤 언어로 운전 기사를 쓰고 있습니까? – WiredPrairie
BSON ID는 거의 항상 클라이언트 생성됩니다. 그들의 사양은 충돌없이 분산 클라이언트에 의해 생성되도록 특별히 설계되었습니다. –