Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

Bases de datos y colecciones

En esta guía, puedes aprender a usar bases de datos y colecciones de MongoDB con el controlador de sincronización de Kotlin.

MongoDB organiza los datos en una jerarquía de los siguientes niveles:

  • Bases de datos: Estructuras de datos de nivel superior en una implementación de MongoDB que almacenan colecciones.

  • Colecciones: Grupos de documentos de MongoDB. Son análogos a las tablas en bases de datos relacionales.

  • Documentos: Unidades que almacenan datos literales como cadenas, números, fechas y otros documentos incrustados. Para obtener más información sobre los tipos y la estructura de los campos de documentos, consulta el Documentos guía en el manual de MongoDB Server.

Para acceder a una base de datos, pasar el nombre de la base de datos a la getDatabase() .

El siguiente ejemplo accede a una base de datos llamada test_database:

val db = client.getDatabase("test_database")

Para acceder a una colección, pasa el nombre de la base de datos al método getCollection().

El siguiente ejemplo accede a una colección llamada test_collection:

val collection = db.getCollection("test_collection")

Tip

Si el nombre de la colección proporcionado aún no existe en la base de datos, MongoDB crea implícitamente la colección cuando se insertan datos en ella por primera vez.

Para crear explícitamente una colección en una base de datos de MongoDB, pasa un nombre de colección al método createCollection().

El siguiente ejemplo crea una colección llamada example_collection:

db.createCollection("example_collection")

Puedes especificar opciones de colección, como el tamaño máximo y las reglas de validación de documentos, configurándolas en una instancia de CreateCollectionOptions. Luego, pasa el CreateCollectionOptions al método createCollection(). Para obtener una lista completa de los parámetros opcionales, consulta la CreateCollectionOptions documentación de la API.

Puedes hacer un query para una lista de colecciones en una base de datos mediante el método listCollections(). El método devuelve un cursor que contiene todas las colecciones en la base de datos y sus metadatos asociados.

El siguiente ejemplo llama al método listCollections() e itera sobre el iterador devuelto para imprimir las colecciones de los ejemplos Acceso a una colección y Crear una colección:

val results = db.listCollections()
val jsonSettings = JsonWriterSettings.builder().indent(true).build()
results.forEach { result ->
println(result.toJson(jsonSettings))
}
{
"name": "example_collection",
"type": "collection",
"options": {},
"info": {
"readOnly": false,
...
},
"idIndex": { ... }
}
{
"name": "test_collection",
"type": "collection",
"options": {},
"info": {
"readOnly": false,
...
},
"idIndex": { ... }
}

Para borrar una colección de la base de datos, llama al método drop() en tu colección.

El siguiente ejemplo elimina la colección test_collection:

db.getCollection("test_collection").drop()

Advertencia

Eliminar una colección borra todos los datos de la colección

Borrar una colección de la base de datos borra permanentemente todos los documentos y todos los índices dentro de esa colección.

Descarta una colección solo si ya no necesitas los datos en ella.

Para eliminar una base de datos de su implementación de MongoDB, llame al método drop() en su base de datos.

El siguiente ejemplo borra la base de datos test_database:

client.getDatabase("test_database").drop()

Advertencia

Borrar una base de datos borra todos los datos de la base de datos.

Borrar una base de datos borra permanentemente todas las colecciones, documentos e índices dentro de esa base de datos.

Elimine una base de datos solo si ya no necesita los datos en ella.

Puedes controlar cómo se ejecutan las operaciones de lectura y escritura en los sets de réplicas especificando una preferencia de lectura, un nivel de consistencia de lectura o un nivel de confirmación de escritura (write concern).

Por defecto, las bases de datos heredan la configuración de lectura y escritura de la instancia MongoClient. Las colecciones heredan estos ajustes de la instancia MongoClient o MongoDatabase en la que se llama el método getCollection(). Puede cambiar estos ajustes llamando a los siguientes métodos:

Para obtener más información sobre cómo configurar una preferencia de lectura, nivel de consistencia de lectura y nivel de confirmación de escritura (write concern), consulta la Guía Configurar operaciones CRUD.

Para aprender más sobre cualquiera de los métodos o tipos analizados en esta guía, consulta la siguiente documentación de API:

Volver

Solución de problemas de conexión

En esta página