温馨提示:本文翻译自stackoverflow.com,查看原文请点击:indexeddb - With Dexie, how to update multiple objects with a non-primary index?
indexeddb updates bulkupdate dexie

indexeddb - 使用Dexie,如何使用非主索引更新多个对象?

发布于 2020-04-19 13:10:53

我想做类似的事情,myTable.update({ location: 'Paris'}, { location: '' }并且myTable将具有location“ Paris”的所有对象更改为已location设置为空字符串。

location不是主键,因此在执行命令之前可能有多少个myTable具有location='Paris' 的对象,但是在执行命令之后应该没有任何带有location='Paris'的对象。

我来自SQL背景,因此对于数据库来说,这似乎是一个非常简单的基本功能。但是Table.update()的Dexie文档指出它仅支持使用主键,因此最多只能更新一个对象。当然,除了循环进行多次调用以更新数据库外,还有其他方法可以做到这一点吗?我没看到一些命令?还是我不了解我应该知道的有关NoSql数据库的信息?

查看更多

提问者
David Burson
被浏览
86
David Fahlander 2020-02-05 07:46
myTable.where({location: 'Paris'}).modify({location: ''})

https://dexie.org/docs/Collection/Collection.modify()