sql.js报错

zhxiangzyx 2016-02-01 05:28:40
最近在d3.js画图的程序,用SQL.js来读本地数据库文件,遇到的问题是:
加载了数据库后可以查询成功几次 然后再查就会报错
Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value 16777216, (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.

使用sql.js读数据库的代码如下
var dbFileElm = document.getElementById('newFile');
var rr = new FileReader();
dbFileElm.onchange = function() {
var f = dbFileElm.files[0];
var r = new FileReader();
r.onload = function() {
rr=r;
};
r.readAsArrayBuffer(f);
};
function selectData(sql) {
var Uints = new Uint8Array(rr.result);
var db = new SQL.Database(Uints);
var contents= db.exec(sql);
Uints=null;
db=null;
return contents
}
调用代码如下
var contents = selectData(sql);
...全文
257 2 打赏 收藏 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhxiangzyx 2016-02-08
  • 打赏
  • 举报
回复
仔细研究了一下sql.js 发现这个是有人把sqlite.c使用emscripten编译的产物,编译时规定的内存只有16M所以会查询几次后挂掉,现在问题已经解决
super_miker 2016-02-02
  • 打赏
  • 举报
回复
内存不足。。

87,984

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧