我已经在Codepen上尝试过:
var result = db.exec('CREATE DATABASE IF NOT EXISTS MyBase; \
ATTACH INDEXEDDB DATABASE MyBase;\
USE MyBase;'+command)[3];
但是在执行第一条命令后,我发现数据库存在异常,如果不使用create database,则会出现数据库不存在的错误
如果我在一开始就调用了
CREATE DATABASE IF NOT EXISTS MyBase
,那么即使我将其称为create table,也将出现表不存在的错误。如果我使用过:
CREATE INDEXEDDB DATABASE IF NOT EXISTS MyBase
我有一个数据库不存在的错误。
我也尝试执行:
window.indexedDB.open("MyBase", 3);
但这也不起作用。
如果我不使用indexDB,则刷新后将清除表。
这是我的Codepen https://codepen.io/jcubic/pen/dVBaRm?editors=0010
最佳答案
索引数据库需要异步代码:
alasql('CREATE DATABASE IF NOT EXISTS MyBase; \
ATTACH INDEXEDDB DATABASE MyBase;\
USE MyBase;', [], function() {
alasql(command, [], function(res) {
});
});
在Wiki https://github.com/agershun/alasql/wiki/IndexedD上