FireDAC.Phys.MongoDBWrapper.TMongoCollection.Insert
Delphi
procedure Insert(ADocument: TMongoDocument; AFlags: TInsertFlags = []); overload;
procedure Insert(AInsert: TMongoInsert; AFlags: TInsertFlags = []); overload;
function Insert(AFlags: TInsertFlags = []): TMongoInsert; overload;
C++
void __fastcall Insert(TMongoDocument* ADocument, TInsertFlags AFlags = TInsertFlags() )/* overload */;
void __fastcall Insert(TMongoInsert* AInsert, TInsertFlags AFlags = TInsertFlags() )/* overload */;
TMongoInsert* __fastcall Insert(TInsertFlags AFlags = TInsertFlags() )/* overload */;
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | FireDAC.Phys.MongoDBWrapper.pas FireDAC.Phys.MongoDBWrapper.hpp |
FireDAC.Phys.MongoDBWrapper | TMongoCollection |
説明
指定されたドキュメントをコレクションに挿入するか、指定された挿入ビルダをコレクションに対して実行します。
挿入ビルダを扱う場合のために、Insert では 2 種類のコーディング スタイルをサポートしています。
必要に応じて、挿入フラグのセットを指定することができます。
挿入コマンドが成功すると、挿入されたドキュメントの数を DocsInserted プロパティから取得することができます。
挿入コマンドが失敗すると、例外が発生します。
Insert で挿入できるドキュメントは 1 件だけです。1 度の操作で複数のドキュメントを挿入するには、BeginBulk の呼び出しと EndBulk の呼び出しの間で、Insert の呼び出しを複数回行います。
例
次の例では、1 件の新しいドキュメントを挿入しています。
MongDB シェルの場合:
db.restaurants.insert({
"name": "La Bella Italia",
"cuisine": "Italian",
"grades": [
{
"date": ISODate("2015-11-02T14:38:00Z"),
"grade": "A",
"score": 8
}
]
})
Delphi の場合:
MyDocument := TMongoDocument.Create(MyConnection.Env)
.Add('name', 'La Bella Italia')
.Add('cuisine', 'Italian')
.BeginArray('grades')
.BeginObject('')
.Add('date', ISO8601ToDate('2015-11-02T14:38:00Z'))
.Add('grade', 'A')
.Add('score', 8)
.EndObject
.EndArray;
MyCollection.Insert(MyDocument);
MyDocument.Free;
C++ の場合:
TMongoDocument* MyDocument = new TMongoDocument(MyConnection->Env);
MyDocument
->Add("name", String("La Bella Italia"))
->Add("cuisine", String("Italian"))
->BeginArray("grades")
->BeginObject("")
->Add("date", ISO8601ToDate("2015-11-02T14:38:00Z"))
->Add("grade", String("A"))
->Add("score", 8)
->EndObject()
->EndArray();
MyCollection->Insert(MyDocument);
delete MyDocument;