索引数据库删除数据库不会重置版本
IndexedDB deleteDatabase does not reset version
在Firefox中。初始化(一次)
var r, dbname = 'a1', db = mozIndexedDB;
第一
try { r = db.open(dbname, 5); } catch (ex) { console.log(ex); }
r.onupgradeneeded = r.onsuccess = r.onblocked = r.onerror = function (e) { console.log(e); };
你会得到两个事件按预期触发。然后关闭数据库,
r.result.close()
最后,删除数据库,
try { r = db.deleteDatabase(dbname); } catch (ex) { console.log(ex); }
r.onsuccess = r.onerror = r.onblocked = function (e) { console.log(e); };
删除成功。但是,当我开始运行第一步 scrip(打开数据库)时,"onupgradeneed"不会被触发并使用删除之前的版本打开数据库。是错误,还是我做错了?
谢谢。
你似乎没有做错任何事。就其价值而言,我相信deleteDatabase
实现在FF中相对较新,所以也许您发现了一个错误。
我会尝试的一件事是在重新启动浏览器之前首先检查然后物理删除支持 IndexeDB 的 .sqlite 数据库文件。这可能是一个缓存的东西。这些文件的路径如下。
在电脑上:
C:''Users''username''AppData''Roaming''Mozilla''Firefox''Profiles''<*>.default''indexedDB
在 Mac 上:
/用户/用户名/库/应用程序'' Support/Firefox/Profiles/<*>.default/indexedDB/
.sqlite 文件中具有数据库版本的表称为 database
,有两列:"名称"和"版本"。您的数据库应位于该表中,并应列出版本号。
数据库应删除该行。如果没有,我相信你发现了一个错误。
最糟糕的是,删除indexedDB
配置文件文件夹中的整个目录,然后重新安装以验证全新安装是否有效。
相关文章:
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 如何通过php页面将数据库值检索到jquery自动完成框中
- 使用javascript从数据库中添加表
- 通过CSV文件上载更新数据库表
- 平均值:无法将数据更新到数据库
- JS编译器/包管理器,用于版本控制
- jQuery-2.1.1.min.js或最新版本jQuery-2.13.min.js不会't支持'@
- 如何使用 Angular JS 将数据保存在数据库中
- Chrome加载旧版本的Javascript文件
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- Rails-JQueryUIAutcomplete和AJAX不工作,可以't连接到数据库
- 在流星中获取数据库版本
- Phonegap (Android) - 数据库更改版本不起作用
- Phonegap应用程序数据库版本在更新后保留
- 索引数据库删除数据库不会重置版本
- Dexie - 数据库打开时无法添加版本
- 数据库当前版本与' oldVersion '参数不匹配
- 如何删除IndexedDB旧版本的数据库由js
- 在插入第二个记录时,Web SQL数据库版本错误
- 如果我想更新它,我将如何在 WebSQL 中获取现有的数据库版本号