Bienvenido, les saluda Luis y hoy les traigo este tutorial.
Python se puede utilizar en aplicaciones de bases de datos. Una de las bases de datos NoSQL más populares es MongoDB.
MongoDB almacena datos en documentos similares a JSON, lo que hace que la base de datos sea muy flexible y escalable. En este artÃculo, espero enseñarle los fundamentos de MongoDB en Python.
Índice
Empezando
Python necesita un controlador MongoDB para acceder a la base de datos MongoDB. Le recomendamos que utilice PIP para instalar "PyMongo"
. Lo más probable es que PIP ya esté instalado en su entorno Python.
C:UsersYour NameAppDataLocalProgramsPythonPython36-32Scripts>python -m pip install pymongo
Para probar si su PyMongo se ha instalado correctamente, ejecute la siguiente lÃnea de código:
import pymongo
Si el código anterior se ejecutó sin errores, "pymongo"
está instalado y listo.
Para crear una base de datos en MongoDB, comience por crear un objeto MongoClient, luego especifique una URL de conexión con la dirección IP correcta y el nombre de la base de datos que desea crear.
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/")mydb = myclient["mydatabase"]
dblist = myclient.list_database_names() if "mydatabase" in dblist: print("The database exists.")
Para crear una colección en MongoDB, use el objeto de la base de datos y especifique el nombre de la colección que desea crear.
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"]mycol = mydb["users"]
Puede comprobar si existe una colección en una base de datos enumerando todas las colecciones:
collist = mydb.list_collection_names() if "customers" in collist: print("The collection exists.")
Para insertar un registro o documento (como se llama en MongoDB) en una colección, usamos el método 'insert_one ()'
.
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]mydict = "username": "bryan.dijkhuizen", "password": "********" x = mycol.insert_one(mydict)
El método 'insert_one'
devuelve un valor (el resultado de la inserción). Entonces, si desea recuperar la ID de su usuario agregado recientemente:
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]mydict = "username": "bryan.dijkhuizen", "password": "********" x = mycol.insert_one(mydict)print(x.inserted_id)
Para insertar varios documentos en una colección en MongoDB, usamos el método 'insert_many ()'
.
myclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]mylist= [ "username": "bryan.dijkhuizen", "password": "********" , "username": "bryan.dijkhuizen2", "password": "********" ,]x = mycol.insert_many(mylist)#print list of the _id values of the inserted documents: print(x.inserted_ids)
Para seleccionar datos de una colección en MongoDB, podemos usar el método 'find_one ()'
.
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]x = mycol.find_one()print(x)
Para seleccionar datos de una tabla en MongoDB, también podemos usar el método 'find ()'
.
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]for x in mycol.find(): print(x)
Esto devolverá todos los documentos de la base de datos.
Si desea devolver campos especÃficos, puede usar el método 'find ()'
con parámetros:
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]for x in mycol.find(, "username": "bryan.dijkhuizen2",): print(x)
El método 'sort ()'
se usa para lo que parece. Se utilizará para: ordenar los resultados. Ordene el resultado alfabéticamente por nombre:
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]mydoc = mycol.find().sort("name")for x in mydoc: print(x)
Ordene los resultados en orden inverso alfabéticamente por nombre:
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]mydoc = mycol.find().sort("username", -1)for x in mydoc: print(x)
Si desea eliminar un documento de su base de datos, puede usar el método 'delete_one ()'
para eliminar solo uno:
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]myquery = "username": "bryan.dijkhuizen2" mycol.delete_one(myquery)
Eliminar muchos documentos
Para eliminar más de un documento, use el método 'delete_many ()'
:
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]myquery = "username": "$regex": "^b" x = mycol.delete_many(myquery)print(x.deleted_count, " documents deleted.")
Eliminar todos los documentos
Elimina todos los documentos de la colección "usuarios"
:
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]x = mycol.delete_many()print(x.deleted_count, " documents deleted.")
Puede eliminar una tabla o colección como se llama en MongoDB usando el método 'drop ()'
.
import pymongomyclient = pymongo.MongoClient("mongodb://localhost:27017/") mydb = myclient["mydatabase"] mycol = mydb["users"]mycol.drop()
Puede actualizar un registro o documento como se llama en MongoDB, utilizando el método 'update_one ()'
.
import pymongo
Para concluir esta guÃa, me gustarÃa agradecerle por leer. Espero que hayas aprendido los fundamentos de Python MongoDB y puedas trabajar con él tú mismo.
Gracias por disfrutar del artÃculo.
Añadir comentario