Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将存储添加到已打开的IndexedDB_Javascript_Html_Indexeddb - Fatal编程技术网

Javascript 将存储添加到已打开的IndexedDB

Javascript 将存储添加到已打开的IndexedDB,javascript,html,indexeddb,Javascript,Html,Indexeddb,在打开并通过onupgradeneeded后,是否有办法在索引数据库中创建存储 我试过: var store = db.createObjectStore('blah', {keyPath: "id", autoIncrement:true}); 获取此错误: InvalidStateError:尝试对不允许突变的数据库执行突变操作。 您试过了吗 var-store=db.createObjectStore(…) 我的意思是你应该去掉“obj”这个词 你可以看看这个例子我同意Josh的观点,你

打开
并通过
onupgradeneeded
后,是否有办法在
索引数据库中创建
存储

我试过:

var store = db.createObjectStore('blah', {keyPath: "id", autoIncrement:true});
获取此错误:

InvalidStateError:尝试对不允许突变的数据库执行突变操作。
您试过了吗

var-store=db.createObjectStore(…)

我的意思是你应该去掉“obj”这个词


你可以看看这个例子

我同意Josh的观点,你需要澄清你的问题

我建议你尝试另一种方法。删除数据库并创建一个新数据库

var request = window.indexedDB.deleteDatabase('somedb');
request.onerror = function(event) {
    console.log('Error', event);
}
request.onsuccess = function(event){
    console.log('Success', event);
    //recreate database
    createNewDB();
}
注意


您需要
关闭()
连接,然后才能删除
数据库并创建一个新数据库。

是否尝试创建一个已经存在的对象存储?使用
db.objectStoreNames.contains('object-store-name')
进行检查。您需要澄清您的问题。例如,“通过OnupgradeRequired”这句话不是正确的英语,也没有技术意义。不确定你想让我在这里做什么?你让我尝试删除一个不存在的存储?哦,不,这不是问题所在,这只是我的方法设置方式,我应该删除db.obj并放入db。对于这个问题,我猜一旦完成了onupgradeneeded方法,你就不能向数据库添加表了。
var request = window.indexedDB.deleteDatabase('somedb');
request.onerror = function(event) {
    console.log('Error', event);
}
request.onsuccess = function(event){
    console.log('Success', event);
    //recreate database
    createNewDB();
}