본문 바로가기

Delphi/꿀팁

[mORMot] Find로 MongoDB Query하기

MongoDB접속 및 DB연결은 developist.tistory.com/2 참조


FindDoc/FindOne 사용하기

var

Coll : TMongoCollection;

doc : Variant;

docs : TVariantDynArray;

begin

//doc의 ObjectID로 찾기

doc := Coll.FindOne(1234);

//Query로 찾기

doc := Coll.FindDoc('{_id:?}', [1234]);

doc := Coll.FindDoc('{_id:?,name:?}', [1234,'teakhyun']);

Coll.FindDocs('{Name:?}', ['teakhyun'], docs, null);

//MongoDB Query 참조 https://docs.mongodb.com/manual/tutorial/query-documents/

ShowMessage(doc.Name);

ShowMessage(docs[i].Name);

end;

FindDoc으로 검색했는데 doc이 nil 또는 값을 찾을 수 없을 때,

FindDoc('조건','값', 'Count')에서 Count를 1로 하면 됩니다.

Count = 찾아올 doc의 최대 개수, 1 이상일 경우 Array로 받던지 변환을 해야합니다.

차라리 그럴경우엔 FindDocs를 사용하는게 편한 것 같습니다.

반응형