db.getCollection()
定義
db.getCollection(name)
db.<collectionName>
構文を使用するのと機能的に同等のコレクションまたはビューオブジェクトを返します。 メソッドは、mongosh
で始まる名前や_
データベース shell メソッド に一致する名前など、名前が 自体と影響する可能性のあるコレクションまたはビューに役立ちます。db.getCollection()
メソッドには次のパラメーターがあります。Parameterタイプ説明name
stringコレクションの名前。
動作
db.getCollection()
オブジェクトは任意のコレクション メソッドにアクセスできます。
指定されたコレクションは、サーバー上に存在する場合と存在しない場合があります。コレクションが存在しない場合、MongoDB では書込み操作の一部として db.collection.insertOne()
のようにコレクションを暗黙的に作成します。
例
次の例では、 db.getCollection()
を使用してauth
コレクションにアクセスし、ドキュメントをコレクションに挿入します。
var authColl = db.getCollection("auth") authColl.insertOne( { usrName : "John Doe", usrDept : "Sales", usrTitle : "Executive Account Manager", authLevel : 4, authDept : [ "Sales", "Customers"] } )
以下の内容が返されます。
{ "acknowledged" : true, "insertedId" : ObjectId("569525e144fe66d60b772763") }
前の例えでは、データベース メソッド db.auth()
と名前が競合するため、db.getCollection("auth")
を使用する必要があります。挿入操作を実行するために db.auth
を直接呼び出すと db.auth()
メソッドが参照され、エラーが発生します。
次の例では、 db.getCollection()
メソッドを使用せずに同じ操作を試みています。
db.auth.insertOne( { usrName : "John Doe", usrDept : "Sales", usrTitle : "Executive Account Manager", authLevel : 4, authDept : [ "Sales", "Customers"] } )
db.auth()
メソッドに insertOne
メソッドがないため、操作エラーが発生します。