db.getCollection()
定義
db.getCollection(name)
db.<collectionName>
構文を使用するのと機能的に同等のコレクションまたはビューオブジェクトを返します。 メソッドは、mongosh
で始まる名前や_
データベース shell メソッド に一致する名前など、名前が 自体と影響する可能性のあるコレクションまたはビューに役立ちます。db.getCollection()
メソッドには次のパラメーターがあります。Parameterタイプ説明name
string
コレクションの名前。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
注意
このコマンドは、すべての MongoDB Atlas クラスターでサポートされています。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
動作
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
メソッドがないため、操作エラーが発生します。