如何从命令行更新mongodb字符串字段
How to update a mongodb string field from command line?
我正在尝试从命令行(而不是从mongo shell)更新字段
mongo mydb --eval "db.users.update({}, { $set : { email : "email@email.com" } })"
结果输入
Fri Oct 24 12:23:46.102 JavaScript execution failed: SyntaxError: Unexpected token :
再次尝试
mongo mydb --eval "db.users.update({}, { $set : { email : '"email@email.com'" } })"
相同的结果
Fri Oct 24 12:24:05.559 JavaScript execution failed: SyntaxError: Unexpected token :
有什么帮助吗?
这基本上只是引用。shell在内部通常更宽容,但在其他方面确实期望有效的JSON:
mongo mydb --eval "db.users.update({}, { '$set': { 'email' : 'email@email.com' } })"
MongoDB shell version: 2.6.5
connecting to: mydb
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
实际上,为了更好地使用其他修饰符(如multi
),请反转使用的引号类型:
mongo mydb --eval 'db.users.update({}, { "$set": { "email": "email@email.com" } },{ "multi": true })
相关文章:
- 将JSON插入MongoDB中,自动转换字符串中的日期
- mongodb-mongoose-find-如何获得适用的字符串作为结果
- 对象推送到MongoDB中保存为字符串的子数组中
- Mongodb使$text搜索可以使用空字符串作为$or的单个子句
- 如何在mongodb的边界框中获取任何项目(点,线字符串,多边形)
- Mongodb 将字符串解析为十进制/浮点数
- MongoDB查询字符串与来自角度前端的ISODate
- 在 MongoDB 集合中查找字符串
- MongoDb 在存储为字符串时按日期查找
- Mongodb:不能使用字符串字段名称附加到数组
- 有没有办法在没有mongodb的情况下创建像_id字符串一样的mongodb
- 无法将 56AEA43CB6BE380000616B07 之类的字符串$push到 MongoDB 中的数组
- MongoDB日期对象在转换为字符串时返回EDT
- MongoDB(通过Meteor)在更新集合文档时将对象属性视为字符串
- 为什么类型为 ObjectID (MongoDB) 的会话参数会转换为字符串
- mongoDB - 计算 2 个字符串中的常用单词
- NodeJS MongoDB 连接字符串问题
- 在mongoDb中,如果字符串输入与任何数组元素匹配,如何获取整个记录(在这种情况下,数组是记录的属性)
- 返回带有Meteor的MongoDB中单个字符串值的数组
- 如何从命令行更新mongodb字符串字段