FireDAC.Phys.MongoDBWrapper.TMongoCollection.Insert

提供: RAD Studio API Documentation
移動先: 案内検索

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;

関連項目