MongoDB es una base de datos multiplataforma orientada a documentos que funciona con el concepto de colecciones y documentos. MongoDB ofrece alta velocidad, alta disponibilidad y alta escalabilidad.
Actualización de datos en MongoDB
Podemos actualizar los datos en una colección usando el método update_one() y el método update_many().
actualizar_uno()
El método update_one() actualiza la primera aparición si se encuentra un documento que coincida con el filtro de consulta.
Sintaxis :update_one(query, newvalues, upsert=False, bypass_document_validation=False, collation=Ninguno, array_filters=Ninguno, session=Ninguno)
Parámetros :
filtro : una consulta que coincide con el documento para actualizar.
new_values : Las modificaciones a aplicar.
upsert (opcional): si es «Verdadero», realice una inserción si ningún documento coincide con el filtro.
bypass_document_validation (opcional): si es «Verdadero», permite que la escritura se excluya de la validación de nivel de documento. El valor predeterminado es «Falso».
intercalación (opcional): una instancia de la clase: ‘~pymongo.collation.Collation’. Esta opción solo es compatible con MongoDB 3.4 y superior.
array_filters (opcional): una lista de filtros que especifican qué elementos de array debe aplicar una actualización. Requiere MongoDB 3.6+.
sesión (opcional): una clase: ‘~ pymongo.client_session.ClientSession’.sugerencia (opcional): un índice que se utilizará para admitir el predicado de consulta especificado. Esta opción solo se admite en MongoDB 4.2 y superior.
Ejemplo:
La base de datos de ejemplo es la siguiente:
Python3
import pymongo client = pymongo.MongoClient("mongodb://localhost:27017/") # Database name db = client["GFG"] # Collection name col = db["gfg"] # Query to be updated query = {"coursename": "SYSTEM DESIGN"} # New value newvalue = {"$set": {"coursename": "Computer network"}} # Update the value col.update_one(query, newvalue)
Salida :
Método: actualizar_muchos()
El método update_many() actualiza todos los documentos que coinciden con el filtro de consulta.
Sintaxis:
update_many(query, newvalues, upsert=False, bypass_document_validation=False, collation=None, array_filters=None, session=None)Parámetros :
- ‘ filtro ‘ : Una consulta que coincide con el documento a actualizar.
- ‘ new_values ’ : Las modificaciones a aplicar.
- ‘ upsert ‘ (opcional): si es «Verdadero», realice una inserción si ningún documento coincide con el filtro.
- ‘ bypass_document_validation ‘ (opcional): si es «Verdadero», permite que la escritura se excluya de la validación de nivel de documento. El valor predeterminado es «Falso».
- ‘ intercalación ‘ (opcional): Una instancia de la clase: ‘~pymongo.collation.Collation’. Esta opción solo es compatible con MongoDB 3.4 y superior.
- ‘ array_filters ‘ (opcional): una lista de filtros que especifican qué elementos de array debe aplicar una actualización. Requiere MongoDB 3.6+.
- ‘ sesión ‘ (opcional): una clase:’~pymongo.client_session.ClientSession’.
Ejemplo:
Python3
import pymongo client = pymongo.MongoClient("mongodb://localhost:27017/") # Database name db = client["GFG"] # Collection name col = db["gfg"] # Query to be updated query = {"coursename": "SYSTEM DESIGN"} # New value newvalue = {"$set": {"coursename": "Computer network"}} # Update the value col.update_many(query, newvalue)
Producción:
Publicación traducida automáticamente
Artículo escrito por vipinyadav15799 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA