El comando drop remueve la colección o vista especificada de la configuración de almacenamiento de la instancia federada de base de datos. Usa el comodín "*" para remover todas las colecciones generadas por el función de colección comodín (es decir, collectionName()), incluyendo la propia regla de colección comodín. No puede remover individualmente las colecciones generadas por la función de colección comodín.
Sintaxis
db.runCommand({ "drop" : "<collection-name|*>" })
db.runCommand({ "drop" : "<view-name>" })
Parámetros
Parameter | Tipo | Descripción | ¿Requerido? |
|---|---|---|---|
| string | El nombre de la colección a descartar o el comodín
| Sí |
Parameter | Tipo | Descripción | ¿Requerido? |
|---|---|---|---|
| string | El nombre de la vista que se va a descartar. | Sí |
Salida
El comando imprime la siguiente salida si se ejecuta correctamente. Puede verificar los resultados ejecutando el comando show collections. Si el comando falla, consulte
Solucionar errores para obtener soluciones recomendadas.
{ "ok" : 1, "ns" : "<database>.<collection>", "nIndexesWas" : 0 }
donde:
nsrefleja el namespace de la colección, que incluye el nombre de la base de datos, el separador de punto (.) y el nombre de la colección. Por ejemplo:<database>.<collection>.nIndexesWasrefleja la cantidad de índices, cuyo valor siempre es0en la federación de datos.
El comando imprime la siguiente salida si tiene éxito. Puedes verificar los resultados ejecutando el comando storageGetConfig. Si el comando falla, consulte Solucionar errores para ver las soluciones recomendadas.
{ "ok" : 1, "ns" : "<database>.<view>", "nIndexesWas" : 0 }
donde:
nsrefleja el espacio de nombres de la vista, que incluye el nombre de la base de datos, el separador de punto (.) y el nombre de la vista. Por ejemplo:<database>.<view>.nIndexesWasrefleja la cantidad de índices, cuyo valor siempre es0en la federación de datos.
Ejemplos
Ejemplos de colecciones de Drop
Los siguientes ejemplos utilizan el comando drop para remover las colecciones de muestra que se asignaron al conjunto de datos de muestra, airbnb y clima, en el AWS TiendaS.3
Ejemplo básico
El siguiente ejemplo utiliza el comando drop para eliminar una colección de muestra denominada airbnb en una base de datos denominada sample en la configuración de almacenamiento.
use sample db.runCommand({ "drop" : "airbnb"})
El comando anterior imprime la siguiente salida:
{ "ok" : 1, "ns" : "sample.airbnb", "nIndexesWas" : 0 }
Ejemplo de comodín
El siguiente ejemplo utiliza el comando drop para remover la función de colección comodín (collectionName()) y todas las colecciones creadas por la función de colección comodín en una base de datos llamada sample en la configuración de almacenamiento.
use sample db.runCommand ({ "drop" : "*" })
El comando anterior imprime la siguiente salida:
{ "ok" : 1, "ns" : "sample.*", "nIndexesWas" : 0 }
Ejemplo de vistas eliminadas
El siguiente comando remueve una vista llamada "listings" en la colección airbnb de la base de datos sample:
use sample db.runCommand({ "drop" : "listings" })
El comando anterior devuelve el siguiente resultado:
Ejemplo
{ "ok" : 1, "ns" : "sample.listings", "nIndexesWas" : 0 }
Solución de problemas de error
Si el comando falla, devuelve uno de los siguientes errores.
Motivo: El namespace (base de datos, colección o vista) no existe.
{ ok: 0, errmsg: "ns not found", code: 26, codeName: "NamespaceNotFound" }
Solución: Asegúrese de que el namespace especificado en el comando sea válido y exista en la configuración de almacenamiento. Si es necesario, utiliza el comando getStorageConfig para recuperar la lista de bases de datos, colecciones y vistas válidas en la configuración de almacenamiento.
Razón: intento de remover una colección creada por la función de colección comodín (collectionName()).
{ ok: 0, errmsg: "cannot drop a collection created from a wildcard", code: 26, codeName: "NamespaceNotFound" }
Solución: Asegúrese de que la colección que va a eliminar no sea una colección individual generada dinámicamente por la función de colección comodíncollectionName() (). La federación de datos no permite eliminar colecciones individuales generadas por la función de colección comodín.