const { app, BrowserWindow } = require('electron');
const Database = require('better-sqlite3');
let mainWindow;
function createWindow() {
mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
});
mainWindow.loadFile('index.html');
}
app.whenReady().then(createWindow);
// 假设你有一个HTML表单来提交数据库信息
// 你可以在你的主进程中处理这个信息
ipcMain.on('add-data', (event, data) => {
// 使用 better-sqlite3 插入数据
const db = new Database('path/to/database.db');
const stmt = db.prepare('INSERT INTO tableName (column1, column2) VALUES (?, ?)');
stmt.run(data.value1, data.value2);
stmt.finalize();
db.close();
// 发送响应给渲染进程
event.reply('add-data-response', 'Data inserted successfully');
});
这个例子展示了如何在 Electron 应用中使用 better-sqlite3
插件来处理 SQLite 数据库操作。它演示了如何在主进程中准备和执行 SQL 语句,并且如何通过 IPC 机制与渲染进程通信。这个例子为开发者提供了一个简明的指导,如何在 Electron 应用中整合数据库操作。