const sqlite3 = require('sqlite3').verbose();
const knex = require('knex');
// 初始化数据库
const db = new sqlite3.Database('./database.sqlite3');
// 使用 knex 初始化 knex 实例,指定使用的数据库引擎为 sqlite3
const knexInstance = knex({
client: 'sqlite3',
connection: {
filename: './database.sqlite3',
},
});
// 使用 knex 创建表
knexInstance.schema.createTable('users', (table) => {
table.increments('id').primary();
table.string('username').notNullable();
table.string('password').notNullable();
}).then(() => {
console.log('Table created');
}).catch((error) => {
console.error('Create table error:', error);
});
// 插入数据
knexInstance('users').insert({
username: 'user1',
password: 'pass123',
}).then(() => {
console.log('Data inserted');
}).catch((error) => {
console.error('Insert data error:', error);
});
// 查询数据
knexInstance('users').select().then((rows) => {
console.log('Query data:', rows);
}).catch((error) => {
console.error('Query error:', error);
});
// 注意:在实际应用中,你需要确保数据库文件的路径是正确的,
// 并且在应用程序的生命周期中管理好数据库的连接和关闭。
这个示例代码展示了如何在 Electron 应用中使用 SQLite3 和 Knex.js。首先,它引入了必要的模块,并创建了一个 SQLite3 数据库的实例。然后,使用 Knex 实例来创建一个新表,插入数据,并进行查询操作。这个例子简洁地展示了如何在 Electron 应用中使用这两个工具,并且提供了一个基本的数据库操作模板。