Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
mongo
Para ver las bases de datos que tenemos, utilizamos
show dbs.
Para usar una base de datos, al igual que en MySQL, tenemos el comando
use manejandodatos:
El comando use nos servir tanto para crear bases de datos, como para seleccionarlas. Si la base
de datos que vallamos a seleccionar no est, MongoDB crea una nueva:
use bdmongo
vamos a crear una coleccin ( mejor conocido como tablas en bases de datos relacionales ) y
vamos a introducir datos a sa coleccin:
db.contacto.find()
El siguiente comando visualizar las colecciones que tenemos creadas en nuestra base de datos
db.getCollectionNames()
Otra alternativa a: db.getCollectionNames() . Sera:
show collections
introducir ms datos a nuestra coleccin contacto:
db.contacto.find({nombre:Ruben})
Con sto, nos mostrar los usuarios que por nombre se llamen Ruben. Si queremos que el
resultado se muestre algo ms vistoso ponemos:
db.contacto.find({nombre:Ruben}).pretty()
Y nos mostrar el resultado con tabulaciones mucho mejor formado y ms vistoso. Ahora
mostraremos a los usuarios que cumplan unos requisitos con respecto a la edad.
En MongoDB para hacer comparaciones con nmeros, si es mayor, menor o igual utiliza unos
selectores especiales que son los siguientes:
db.contacto.find({edad:{$lt: 42}})
Lista de contactos que tengan menos de 42 aos.
db.contacto.find({edad:{$lte: 42}})
Lista de contactos que tengan de edad menos o igual a 42 aos.
db.contacto.find({edad:{$gt: 42}})
Lista de contactos que tenga de edad mayor 42 aos.
db.contacto.find({edad:{$gte: 42}})
Lista de contactos que tenga de edad mayor o igual 42 aos.
db.contacto.find({nombre:{$ne:Ruben}}).pretty()
Lista todos los contactos menos los contactos con nombre Ruben. En MongoDB tambin podemos
comprobar si existe un campo o no en los documentos que tenemos almacenados en nuestra base
de datos. sto se consigue con el operador $exist :
db.contacto.find({fechanacimiento:{$exists:true}})
Utilizamos el mtodo find y buscamos el campo que queremos encontrar junto con el operador
exist, cuyos valores sern false o true. En el ejemplo anterior estamos diciendo que busque
aquellos documentos que tengan un campo llamado fechanacimiento y si hay documentos con se
campo que me lo muestre. En cambio si queremos que nos muestre los que no tienen se campo,
slo tenemos que cambiar el valor true a false:
db.contacto.find({fechanacimiento:{$exists:false}})
Tambin podemos incluir varias ordenes en una misma consulta, cmo por ejemplos los
operadores $and y $or.
Despus de ver las ordenes bsicas anteriores vamos a ver (por fin), las ordenes de borrar y
actualizar, anteriormente hemos visto, entre otras muchas, como insertar datos, ahora vamos a
ver cmo borrarlos o actualizarlos.
db.contacto.find()
Lo primero mostramos los contactos que tenemos almacenados y elegimos el id del contacto a
eliminar, copiamos TODO el valor del _id y ejecutamos el siguiente comando:
db.contacto.remove({_id: ObjectId(534133f87a5b869f437cdab9)})
Con sto hemos eliminado el contacto con el id que hemos indicado. Tambin podemos eliminar
el contacto por nombre, simplemente cambiar el campo _id por nombre y el valor del _id por el
valor del nombre del contacto a eliminar.
MongoDB utiliza dos tipos de update: uno que actualiza el campo de un documento concreto, y
otro que actualiza completamente el documento. Ahora lo veremos para que se quede mucho
ms claro.
Primero vamos a cambiar el apellido del contacto Ruben, Rodriguez. Lo vamos a cambiar por
Ramirez. Cmo slo vamos a modificar un campo, pues utilizaremos el primer update. El primer
update requiere del operador $set, dentro de ste operador introduciremos el nuevo valor que
queremos introducir: