如何升级indexedDB objectStore以添加keyPath

时间:2014-03-21 16:20:55

标签: html5 indexeddb

我有一个使用:

创建的objectStore
    db.createObjectStore('mystore', {autoIncrement: true})
      .createIndex('myindex', 'myindex', {unique: true});

我需要修改架构以使用内联键,例如:

    db.createObjectStore('mystore', {autoIncrement: true, keyPath: 'seq'})
      .createIndex('myindex', 'myindex', {unique: true});

我没有看到在迁移中修改对象存储的任何方法

1 个答案:

答案 0 :(得分:2)

不幸的是,在创建对象存储库之后,无法更改对象存储库的主键。

要迁移,您必须使用内联密钥创建新商店,然后复制数据。

我猜这是related to your other question。请注意,您不需要内联键来使用puts。 IDBIndex也会公开put()方法。您可以通过添加新索引并将其用于put()您的记录来实现您所寻找的目标。