升级检查现有的Indexeddb到更新的版本

时间:2013-11-12 07:47:39

标签: javascript html5 indexeddb

有哪些方法可以检查客户端IndexedDb是否需要更新?这适用于已有本地存储的用户

var idx_db = null;
var dbRequest = window.indexedDB.open(“ExampleDB”);
    dbRequest.onerror = function (evt) {
    alert(“Db error: “ + evt.target.error.name);
}
    dbRequest.onsuccess = function (evt) {
    idx_db = evt.target.result; 
}

2 个答案:

答案 0 :(得分:2)

您无需检查任何内容。您需要做的唯一事情是使用所需的版本打开indexeddb,如:

var db = window.indexedDB.open("db", 3);

如果需要升级,将调用onupgradeneeded回调。如果数据库已经在当前版本中,则只会调用成功回调。

在onupgradeneeded回调中,您可以检查数据库的旧版本是什么。有了这个,您可以选择所需的升级路径。

答案 1 :(得分:0)

管理从HTML5-IndexedDB书中找出来。通过指定高于当前数据库版本的版本号,该版本号将触发onupgradeneeded事件处理程序。

var dbRequest = window.indexedDB.open(“ExampleDB”, 2);
dbRequest.onupgradeneeded = function (evt) {
if (evt.oldVersion < 1) {
      // create objects for version 1
}
    // other version upgrade paths
}