проблема с базой данных
Я использую Vue CLI Plugin Electron Builder для создания собственного приложения, и я застрял при подключении к базе данных, независимо от того, какую базу данных я использовать (mysql2 / sqlite3) с или без продолжения, я получил таймаут для mysql (прерванное соединение) и не могу открыть файл для sqlite, это происходит только в режиме разработки, после сборки проекта он работает отлично.
"configureWebpack": {
"externals": {
"sequelize": "require('sequelize')",
"mysql2": "require('mysql2')",
"sqlite3": "require('sqlite3')",
"sqlite": "require('sqlite')"
}
},
"pluginOptions": {
"electronBuilder": {
"externals": [
"sequelize",
"mysql2",
"sqlite3",
"sqlite"
],
- Без приведенных выше кодов у меня возникнет проблема "нехватка pg-hsotre" или "пожалуйста, установите mysql2".
- Не всегда происходит сбой, для mysql это примерно 50% и 95% для sqlite, и когда соединение работает, оно будет работать, пока я не закрою главное окно. Я не менял никакого кода во время попыток, просто продолжал печатать пряжу электрон: служить.
- 100% работает после пряжи электрон: сборка, без указания какой платформы.
- Только в потоке рендерера, если Я использую ipcMain в «backgroud. js» для прослушивания и извлечения данных, это будет работать.
коды:
var sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database('D:/xxx/xxx/xx.db');
export default {
all() {
return new Promise((resolve, reject) => {
db.all('select * from table', function (error, rows) {
if (error) {
reject(error);
} else {
resolve(rows);
}
});
});
}
};