首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript了解NeDB (更新查询)

JavaScript了解NeDB (更新查询)
EN

Stack Overflow用户
提问于 2019-10-01 03:04:25
回答 1查看 78关注 0票数 0

我正在学习名为NeDB (Node.js) https://github.com/louischatriot/nedb的js数据库

对更新文档感到困惑。

更新前的数据库

代码语言:javascript
复制
{"p_id":"1","rank":"0","_id":"fXBIrW8pp8y5M9zg"}
{"$$indexCreated":{"fieldName":"p_id","unique":false,"sparse":false}}

Js代码

代码语言:javascript
复制
db.update({p_id: "1"}, {$set: {rank: "1"}}, {});
db.update({p_id: "1"}, {$set: {rank: "1"}}, {});

更新后的数据库

代码语言:javascript
复制
{"p_id":"1","rank":"0","_id":"fXBIrW8pp8y5M9zg"}
{"$$indexCreated":{"fieldName":"p_id","unique":false,"sparse":false}}
{"p_id":"1","rank":"1","_id":"fXBIrW8pp8y5M9zg"}
{"p_id":"1","rank":"1","_id":"fXBIrW8pp8y5M9zg"}

重新启动程序

代码语言:javascript
复制
{"p_id":"1","rank":"1","_id":"fXBIrW8pp8y5M9zg"}
{"$$indexCreated":{"fieldName":"p_id","unique":false,"sparse":false}}

因此,nedb没有修改文档,而是创建了一个新的文档。我不敢想象如果有很多用户和更新请求会发生什么。当我重新启动代码时,它删除了匹配项,db看起来没有问题。只是想知道是没问题还是我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2019-10-01 03:33:28

我可能错了,但看起来你把类型放错了地方。在数据库中,数字字段的字符串值为"1",但是对于update子句,您使用的是p_id 1。请在代码中将1更改为"1",然后重试

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58173841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档