- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试在我的 Angular + Electron 应用程序中使用 node-sqlite3 打开 sqlite 数据库文件。
尽管我确保该文件存在并且 Electron 可以读取它,但当我尝试使用以下方法创建 sqlite 数据库时:
import * as sqlite from 'sqlite3';
// ...
const path = `${__dirname}/assets/sqlite.db`;
const fs = require('electron').remote.require('fs');
console.log(path);
if (fs.existsSync(AppConfig.sqlitePath)) {
console.log('the file exists');
} else {
console.log('the file does not not');
}
const myDb = new sqlite.Database(path, sqlite.OPEN_READONLY, (error) => {
console.log(error);
});
该文件存在,因为我收到了正确的 console.log
消息,它看起来像:
/tmp/.mount_xxxxxx/resources/app.asar.unpacked/dist/assets/sqlite.db
但是,从 new sqlite.Database(...)
我收到以下错误,因为该文件不存在:
Error: SQLITE_CANTOPEN: unable to open database file
最佳答案
我收到了artiebits的提示来看看asarUnpack这确实是正确的做法。
<小时/>我解决了:
1) 将以下内容添加到我的 electron-builder.json
中:
"asarUnpack": [
"dist/assets/sqlite.db"
],
2)替换:
const path = `${__dirname}/assets/sqlite.db`;
与:
const path = `${__dirname}/assets/sqlite.db`.replace('app.asar', 'app.asar.unpacked');
关于node.js - Sqlite Electron : Error: SQLITE_CANTOPEN: unable to open database file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60422885/
我正在尝试在选定的文件夹中创建一个 Sqlite 数据库,但无法执行此操作。 操作系统 - Windows,编辑器 - Visual studio,progect 编码为 unicode。数据库连
我想连接到我的数据库 sqlite3。这在本地主机上运行良好,但在我部署到 zeit.co 时失败,出现错误: Error: SQLITE_CANTOPEN: unable to open datab
我运行了以下命令: $ meteor create myapp 并收到以下错误消息: Retrying after error { [Error: SQLITE_CANTOPEN: unable to
我正在尝试在我的 Angular + Electron 应用程序中使用 node-sqlite3 打开 sqlite 数据库文件。 尽管我确保该文件存在并且 Electron 可以读取它,但当我尝试使
我在网站上阅读了有关此问题的各种内容,但我无法弄清楚这一点。我被这一步卡住了好久。我该如何解决这个问题 Logcat 输出 根据logcat,这是由SQLiteCantOpenDatabaseExce
我是一名优秀的程序员,十分优秀!