问题:在执行pymongo的update语句时,提示了ValueError: update only works with $ operators
脚本:db.user.update_one({"name":"zhao"},{"name":"qian"})
原因:update语句需要用$进行操作,加上$set即可,db.user.update_one({"name":"zhao"},{"$set":{"name":"qian"}})
 
 
这句话的意思是找到了{"name":"zhao"}的字段就将其更新为{"name":"qian"},如果找不到就添加一条的参数是upsert=False。
 
update语句可以直接用db.user.update(),这个语句可以更改多条,发现如果只更改一项的时候没有添加"$set"也没有报错。(update_one只能更改一条数据)
 
注意这里是指更改找到的第一条,如果是要更改全部的话需要指定multi=True,注意True的T一定要是大写,如db.user.update({"name":"sun"},{"$set":{"name":"sun2"}},multi=True)
 
注:$操作符,可以用$set、$inc、$push进行更新操作,网上有人测试过使用$set和$inc时间区别不大,但是$push时间慢于前两者
 
(db是我指定的数据库,user是我指定的聚合的名字)
 
 

ValueError: update only works with $ operators的更多相关文章

  1. jupyter notebook中出现ValueError: signal only works in main thread 报错 即 长时间in[*] 解决办法

    我在jupyter notebook中新建了一个基于py3.6的kernel用来进行tensorflow学习 但是在jupyter notebook中建立该kernel时,右上角总是显示 服务正在启动 ...

  2. Python与MogoDB交互

    睡了大半天,终于有时间整理下拖欠的MongoDB的封装啦. 首先我们先进行下数据库的连接: conn = MongoClient('localhost',27017) # 建立连接 result = ...

  3. mongodb3.2系统性学习——3、update()操作

     mongodb 包含众多的原子性操作: 实例: //连接数据库 dbService = connect("localhost:27017"); //选择插入集合 db = dbS ...

  4. [MongoDB]Mongodb攻略

    -------------------------------------------------------------------------------------------- [基础] 1. ...

  5. 【mongoDB基础篇①】安装与常用操作语句

    简述 mongoDB与redis同为noSql数据库,但是redis为kv数据库(key/value),而mongoDB为文档型数据库存储的是文档(Bson->json的二进制化).内部执行引擎 ...

  6. MongoDB数据库(二):增删查改

    MongoDB数据库的增删查改 1.插入数据 语法: db.集合名称.insert(document) db.table_name.insert({name:'gj',gender:1}) db.ta ...

  7. 小白必须懂的MongoDB的十大总结

    小白必须懂的MongoDB的总结 一.MongoDB的认识 1.什么是MongoDB? MongoDB 是一个介于关系数据库和非关系数据库之间的开源产品,是最接近于关系型数据库的 NoSQL 数据库. ...

  8. 爬虫之mongodb数据库

    一 mongodb的介绍 1.易用性:mongodb是一款强大.灵活并且易扩展的数据库.他面向于文档的数据库,而不是关系性数据库.不采用关系型主要是为了获得更好的扩展性.还有一个好处就是面向文档的数据 ...

  9. MongoDB基础命令及操作

    MongoDB:NoSQL数据库 MongoDB中的重要指示点 MongoDB中的三要素 数据库 集合 文档 MongoDB中的数据存储是以Bson的形式存储的,Bson是二进制的json,所以看上去 ...

随机推荐

  1. jmeter 参数化方法

    1.csv 看异步图书 JMeter实战60页

  2. js中,object可以调用style对象,[]不可以调用style对象

    <!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" Content=&q ...

  3. [转]批处理遍历文件夹生成 html 文件

    [转自] http://www.360doc.com/content/15/0205/20/21861372_446525665.shtml :: 自动将指定文件夹中的图片写入到 html 文件中 @ ...

  4. 大家都对vertical-align的各说各话

    原文地址:http://www.blueidea.com/tech/web/2008/5892.asp 最近几天仔细研究了一下vertical-align这个属性,结果让我大吃一惊,这个很“资深”的C ...

  5. [UE4]移动设备贴图消失

    pc版本是支持直接使用psd文件作为贴图文件,但移动设备就不支持了.

  6. async await promise 执行时序

    先用一个例子来说明async await promise的执行顺序 console.log('start'); async function test(){ console.log('111'); a ...

  7. QEMU,KVM及QEMU-KVM介绍

    What's QEMU QEMU是一个主机上的VMM(virtual machine monitor),通过动态二进制转换来模拟CPU,并提供一系列的硬件模型,使guest os认为自己和硬件直接打交 ...

  8. mysq更新(六) 单表查询 多表查询

      本节重点: 单表查询 语法: 一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY fiel ...

  9. Dep数据发布,推送

    package com.cfets.ts.u.shchgateway.util; import com.cfets.cwap.s.stp.MessageUnit; import com.cfets.t ...

  10. php获取服务器信息类

      <?php/**+------------------------------------------------------------------------------* 获取服务器信 ...