Docs Menu

ドキュメントの挿入

InsertOne()メソッドを使用して、コレクションにドキュメントを挿入できます。

Tip

この例の実行方法については、「 の使用例」をお読みください。

この例では、 restaurants コレクション内のドキュメントのモデルとして次の Restaurant 構造体を使用します。

type Restaurant struct {
Name string
RestaurantId string `bson:"restaurant_id,omitempty"`
Cuisine string `bson:"cuisine,omitempty"`
Address interface{} `bson:"address,omitempty"`
Borough string `bson:"borough,omitempty"`
Grades []interface{} `bson:"grades,omitempty"`
}

omitempty 構造体タグが空のままの場合、挿入されたドキュメントの対応フィールドが省略されます。

次の例では、 restaurantsコレクションに新しいドキュメントを挿入します。

Tip

存在しないデータベースとコレクション

書き込み操作を実行するときに必要なデータベースとコレクションが存在しない場合は、サーバーが暗黙的にそれらを作成します。

coll := client.Database("sample_restaurants").Collection("restaurants")
newRestaurant := Restaurant{Name: "8282", Cuisine: "Korean"}
result, err := coll.InsertOne(context.TODO(), newRestaurant)
if err != nil {
panic(err)
}

が完全に実行可能な例 を表示

完全な例を実行すると、 restaurantsコレクションに次の挿入されたドキュメントが見つかります。

{
"_id": ObjectId("..."),
"name": "8282",
"cuisine": "Korean"
}

ドキュメントの検索方法の例については、 「 ドキュメントを検索する 」の使用例を参照してください。

ドキュメントの挿入の詳細については、 ドキュメントの挿入 を参照してください。

InsertOne()