AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

db. コレクション.drop()(mongoshメソッド)

MongoDB とドライバー

このページではmongoshメソッドについて説明します。 MongoDBドライバーで同等のメソッドを確認するには、 プログラミング言語の対応するページを参照してください。
db.collection.drop(<options>)

データベースからコレクションまたはビューが削除されます。このメソッドでは、削除されたコレクションに関連付けられているインデックスも削除されます。drop() は、drop コマンドのラッパーです。

次の値を返します。

true

注意

指定されたコレクションが存在しない場合でも、db.collection.drop()trueを返します。

このメソッドは、次の環境でホストされている配置で使用できます。

  • MongoDB Atlas はクラウドでの MongoDB 配置のための完全管理サービスです

注意

このコマンドは、すべての MongoDB Atlas クラスターでサポートされています。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。

  • MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン

  • MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン

drop()メソッドの形式は次のとおりです。

db.collection.drop( { writeConcern: <document> } )

drop() メソッドは、次のフィールドを持つ任意のドキュメントを受け取ります。

フィールド
説明

writeConcern

  • drop()メソッドとdrop コマンドは、削除されたコレクションで開かれた 変更ストリーム 無効化イベント を作成します。

  • db.collection.drop()メソッドとdrop コマンドは、コレクションを削除する前に、ターゲットコレクションで進行中のインデックスビルドを中止します。

    レプリカセットまたはシャーディングされたレプリカセットの場合、プライマリでインデックスを中止しても、セカンダリでのインデックス構築は同時に中止されません。MongoDB は、指定されたインデックスの進行中の構築をプライマリで中止しようとし、成功した場合には関連する abortoplog エントリを作成します。進行中の構築が複製されたセカンダリ ノードは、インデックス構築をコミットまたは中止する前に、プライマリからのコミットまたは中止の oplog エントリを待ちます。

  • コレクションを削除すると、それに関連付けられたゾーンやタグの範囲も削除されます。

  • MongoDB5.0 以降では、管理データベースまたはコンフィギュレーションデータベース内のコレクションを から削除しようとすると、drop コマンドとdb.collection.drop() mongosメソッドによってエラーが返されます。これらのコレクションを削除するには、コンフィギュレーションサーバーに接続して、コマンドを実行します。

    警告

    管理データベースまたは構成データベース内のコレクションを削除すると、クラスターが使用できない状態になる可能性があります。

  • MongoDB 6.0 以降では、drop() により、指定されたコレクションと暗号化されたフィールドに関連するあらゆる内部コレクションが削除されます。

    重要

    mongosh drop() メソッドの動作は、ドライバーの drop メソッドの動作と異なります。指定されたコレクションと暗号化されたフィールドに関連する内部コレクションの両方を削除するには、ドライバーの接続で自動暗号化が有効になっている必要があります。指定されたコレクションと暗号化されたフィールドに関連する内部コレクションの両方が mongosh により必ず削除されます。

MongoDB 5.0 以降を実行中のシャーディングされたクラスターでは、特別なアクションは必要ありません。drop() メソッドを使用して、同じ名前の新しいコレクションを作成します。

db.collection.drop()は、操作中に指定されたコレクションに対する排他ロックを取得します。コレクションに対する後続のすべての操作は、db.collection.drop() がロックを解放するまで待機する必要があります。

次の操作は、現在のデータベース内のstudentsコレクションを削除します。

db.students.drop()

次の操作は、現在のデータベース内のstudentsコレクションを削除します。この操作では、 1件の書込み保証を使用します。

db.students.drop( { writeConcern: { w: 1, j: true } } )
このページを評価