我正在使用https://github.com/kripken/sql.js这个插件来打开sqlite db我的js是
<script>
function print(text) {
var element = document.getElementById('output');
element.innerHTML = text.replace(/\n/g, '<br>');
}
var db = SQL.open('fixtures/db/development.sqlite');
// Run a command in the database
function execute(commands) {
try {
var data = db.exec(commands.replace(/\n/g, '; '));
print(JSON.stringify(data, null, ' '));
print(data);
} catch(e) {
print(e);
}
}
并且我总是收到此错误&#34; SQLite异常:26,文件已加密或不是数据库&#34;。打开sqlite文件有什么问题吗?
答案 0 :(得分:0)
授予您的Web服务器访问存储SQLite文件的文件夹的权限。
例如,如果这是IIS,则授予用户“IIS AppPool \ DefaultAppPool”修改对SQLite数据库文件或包含文件夹的访问权限。该用户未显示在用户搜索中,但如果您粘贴名称并在使用Windows资源管理器授予权限时单击“检查名称”,则将允许用户被选中。
如果这是Apache,您需要考虑使用chmod来更改权限。
对于两个Web服务器,都需要允许文件扩展名。在IIS中,您可能需要为.sqlite添加mimetype。