drop
drop
コマンドは、指定されたコレクションまたはビューをフェデレーティッドデータベースインスタンス ストレージ構成から削除します。 ワイルドカード"*"
を使用して、ワイルドカード コレクション ルール自体を含む、 ワイルドカード コレクション関数によって生成されたすべてのコレクション(つまりcollectionName()
)を削除します。 ワイルドカード コレクション関数によって生成されたコレクションを個別に削除することはできません。
構文
db.runCommand({ "drop" : "<collection-name|*>" })
db.runCommand({ "drop" : "<view-name>" })
パラメーター
Parameter | タイプ | 説明 | 必須 |
---|---|---|---|
| string | 削除するコレクションの名前、またはワイルドカード
| はい |
Parameter | タイプ | 説明 | 必須 |
---|---|---|---|
| string | 削除するビューの名前。 | はい |
出力
コマンドは成功した場合、次の出力を印刷します。 show collections
コマンドを実行して結果を確認できます。 コマンドが失敗した場合、推奨される解決策については、「 エラーのトラブルシューティング 」を参照してください。
{ "ok" : 1, "ns" : "<database>.<collection>", "nIndexesWas" : 0 }
以下の条件に一致するもの。
ns
は、データベース名、ドット(.
)セパレーター、コレクション名を含むコレクション名前空間を反映します。 たとえば<database>.<collection>
。nIndexesWas
はインデックスの数を反映します。この値は、Data Federation では常に0
です。
コマンドは成功した場合、次の出力を印刷します。 storageGetConfig
コマンドを実行して結果を確認できます。 コマンドが失敗した場合、推奨される解決策については「 エラーのトラブルシューティング 」を参照してください。
{ "ok" : 1, "ns" : "<database>.<view>", "nIndexesWas" : 0 }
以下の条件に一致するもの。
ns
は、データベース名、ドット(.
)セパレーター、ビュー名を含むビュー名前空間を反映します。 たとえば<database>.<view>
。nIndexesWas
はインデックスの数を反映します。この値は、Data Federation では常に0
です。
例
コレクションの削除の例
次の例では、drop
コマンドを使用して、サンプル データセットにマッピングされたサンプル コレクションを削除します。 Airbnb と 気象Amazon Web Services ( S ストア)。3
基本的な例
次の例では、 drop
コマンドを使用して、ストレージ構成内の という名前のデータベース内のsample
airbnb
という名前のサンプル コレクションを削除します。
use sample db.runCommand({ "drop" : "airbnb"})
上記のコマンドでは、次の出力が印刷されます。
{ "ok" : 1, "ns" : "sample.airbnb", "nIndexesWas" : 0 }
ワイルドカードの例
次の例では、 drop
コマンドを使用して、ワイルドカード コレクション関数( collectionName()
)と、ストレージ構成内のsample
という名前のデータベースでワイルドカード コレクション関数によって作成されたすべてのコレクションを削除します。
use sample db.runCommand ({ "drop" : "*" })
上記のコマンドでは、次の出力が印刷されます。
{ "ok" : 1, "ns" : "sample.*", "nIndexesWas" : 0 }
ビューの削除の例
次のコマンドは、 Airbnb 上の "lists" という名前のビューsample
を削除します。 データベース内のコレクションを含む場合
use sample db.runCommand({ "drop" : "listings" })
上記のコマンドは、次の出力を返します。
例
{ "ok" : 1, "ns" : "sample.listings", "nIndexesWas" : 0 }
エラーのトラブルシューティング
コマンドが失敗した場合は、次のいずれかのエラーが返されます。
理由:名前空間(データベース、コレクション、またはビュー)が存在しません。
{ ok: 0, errmsg: "ns not found", code: 26, codeName: "NamespaceNotFound" }
解決策:コマンドで指定された名前空間が有効で、ストレージ構成に存在することを確認します。 必要に応じて、 getStorageConfig
コマンドを使用して、ストレージ構成内の有効なデータベース、コレクション、ビューのリストを取得します。
理由:ワイルドカード コレクション関数によって作成されたコレクションを削除しようとしているとき( collectionName()
)。
{ ok: 0, errmsg: "cannot drop a collection created from a wildcard", code: 26, codeName: "NamespaceNotFound" }
解決策:削除しているコレクションが、ワイルドカード コレクション関数( collectionName()
)によって動的に生成される個々のコレクションではないことを確認します。 Data Federation は、 ワイルドカード コレクション 関数によって生成された個々のコレクションの削除をサポートしていません。