如何重命名IndexedDB数据库

How to rename an IndexedDB database?

本文关键字:数据库 IndexedDB 重命名      更新时间:2023-09-26

我通过IndexedDB.open方法创建了一个名为"A"的IndexedDB数据库。

现在我想把数据库名称修改为"B",我该怎么做?

我不想用新名称创建一个新数据库,并将所有数据从旧数据库复制到新数据库。

来自主文档:

每个数据库都有一个名称,可以在特定的来源中识别它。名称可以是任何字符串值,包括空字符串,并且在数据库的生存期内保持不变

所以,正如它所说,这个名字在整个生命中都是一样的。

这有点麻烦,但您可以使用所需的名称创建一个新数据库,并将所有内容从旧数据库复制到新数据库。如果您使用的是自动递增ID,并且有按ID的交叉引用,则可能需要在传输期间生成旧ID到新ID的映射,并转换引用。

indexedDb v2.0支持重命名。看见https://hacks.mozilla.org/2016/10/whats-new-in-indexeddb-2-0/