Docs Menu
Docs Home
/ / /
Kotlin コルーチン
/ /

ドキュメントの挿入

MongoCollection オブジェクトの insertOne() メソッドを使用して、コレクションに単一のドキュメントを挿入できます。ドキュメントを挿入するには、保存するフィールドと値を含む Document オブジェクトを構築します。まだ存在しないコレクションに対して insertOne() メソッドを呼び出すと、サーバーによって自動的にコレクションが作成されます。

挿入に成功すると、insertOne()InsertOneResult のインスタンスを返します。InsertOneResult インスタンスで getInsertedId() メソッドを呼び出すと、挿入したドキュメントの _id フィールドなどの情報を検索できます。

挿入操作が失敗した場合、ドライバーは例外を発生させます。 特定の条件で発生する例外の種類の詳細については、このページの下部にリンクしているinsertOne()の API ドキュメントを参照してください。

次のスニペットは、単一のドキュメントを movies コレクションに挿入します。

例を実行すると、挿入されたドキュメントのObjectIdが値フィールドに含まれる出力が表示されます。

注意

この例では、接続 URI を使用して MongoDB のインスタンスに接続します。 MongoDB インスタンスへの接続の詳細については、「 接続ガイド 」を参照してください。

import com.mongodb.MongoException
import com.mongodb.kotlin.client.coroutine.MongoClient
import kotlinx.coroutines.runBlocking
import org.bson.codecs.pojo.annotations.BsonId
import org.bson.types.ObjectId
data class Movie(@BsonId val id: ObjectId, val title: String, val genres: List<String>)
fun main() = runBlocking {
// Replace the uri string with your MongoDB deployment's connection string
val uri = "<connection string uri>"
val mongoClient = MongoClient.create(uri)
val database = mongoClient.getDatabase("sample_mflix")
val collection = database.getCollection<Movie>("movies")
try {
val result = collection.insertOne(
Movie(ObjectId(), "Ski Bloopers", listOf("Documentary", "Comedy"))
)
println("Success! Inserted document id: " + result.insertedId)
} catch (e: MongoException) {
System.err.println("Unable to insert due to an error: $e")
}
mongoClient.close()
}
Success! Inserted document id: BsonObjectId{value=...}

このページで言及されているクラスとメソッドについて詳しくは、次の API ドキュメントを参照してください。

  • insertOne()

  • ドキュメント

  • InsertOneResult

戻る

挿入操作