python - mongodb更新查询的无效语法问题
问题描述
我使用 mongoDB 作为我项目的数据库。项目是用 python 编写的,我正在使用 pymongo 库。我正在尝试更新文档中的某些字段,但不断收到“无效的语法错误”。为了让它更奇怪,我可以在 mongo shell 中获得相同的查询以正常运行。但是,我的 .py 文件中的同一行代码会引发无效错误。
尝试了其他查询,ef find() 和通用更新(不使用 $set 运算符),这些都可以正常工作。
以下代码在 VS 代码中引发了无效的语法错误。但是,同样的代码在 mongo shell 中运行良好。
db.fearlessData.update({"Country":"Canada"},{$set: {"Type":"Canadian_Wedding_2"}}, {multi:true})
---- 当我在 mongo shell 中运行时:
> db.fearlessData.update({"Country":"Canada"},{$set: {"Type":"Canadian_Wedding_2"}}, {multi:true})
WriteResult({ "nMatched" : 10, "nUpserted" : 0, "nModified" : 0 })
----一般更新查询在.py文件中也能正常运行(没有语法错误)
db.fearlessData.update({"Name":"Test_Elena2"},{"Name":"Test_Elena_3"})
期望代码在没有任何语法错误的情况下运行。在此处输入图像描述
解决方案
尝试在选项中添加双引号:
> db.fearlessData.update({"Country":"Canada"},{"$set": {"Type":"Canadian_Wedding_2"}}, {"multi":true})
推荐阅读
- .net - 如何映射嵌套实体,它们都附加到 EF Core 3 中的其他单个实体
- c++ - 在 MPI 任务中,如何找出每个节点可用的处理器数量?
- java - 假设初始位置为 (1, 1),在每一步通过以下给定规则找出是否可以到达 (x, y)
- authentication - google/twitter/facebook 可以拒绝使用他们注册的用户访问应用程序吗
- python - 如何解决python依赖版本
- angular - 找不到我的 observable 是如何自动触发的
- javascript - 如何在 React 中显示具有不同键的 JSON?
- sql - 我将日期存储在 SQL Server 的 varchar 中为“19-09-2020”,我想将其转换为“2020-09-19”
- firebase - Flutter:如何从firebase中删除文档而不提及它的ID
- python - 如何在单个查询 sqlalchemy python 中获取时间序列分区数据?