📅  最后修改于: 2023-12-03 14:52:00.483000             🧑  作者: Mango
SQLite3 是一种关系型数据库管理系统,它零配置、轻量级、无需服务器。该数据库系统是一个可重客户端/服务器端结构的关系型数据库管理系统。它的主要用途是嵌入式设备、移动设备以及小型应用程序。
Node.js 是一种基于 Chrome V8 引擎的 JavaScript 运行环境。借助于对事件驱动、异步编程的支持以及 Node.js 提供的模块,开发人员可以用 JavaScript 编写高效的服务器端应用程序。
在本文中,我们将学习如何使用 Node.js 来操作 SQLite3 数据库。我们将介绍如何插入和选择数据。
首先,我们需要在我们的机器上安装使用 SQLite3。它可以通过以下命令来安装:
sudo apt-get install sqlite3 libsqlite3-dev
接下来,我们需要为我们的应用程序安装 SQLite3 NPM 模块。此模块可以通过以下命令来安装:
npm install sqlite3
在我们开始插入和选择数据之前,我们需要创建一个数据表。我们可以使用下面的 SQL 查询来创建一个名为“users”的表:
CREATE TABLE users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
email TEXT NOT NULL
);
现在我们已经创建了一个数据表。让我们开始插入和选择数据。
要插入数据,我们需要使用 Node.js 的 SQLite3 模块。我们需要使用以下代码来打开数据库连接:
const sqlite3 = require('sqlite3').verbose();
let db = new sqlite3.Database('./database.db', (err) => {
if (err) {
console.error(err.message);
}
console.log('Connected to the database.');
});
运行上面的代码之后,我们应该能够看到“Connected to the database”这个消息,表示我们已经成功连接到我们的 SQLite3 数据库。
接下来,我们可以使用以下代码来向数据库中插入数据:
db.run(`INSERT INTO users(name, email) VALUES(?, ?)`, ['John Doe', 'john.doe@example.com'], function(err) {
if (err) {
return console.log(err.message);
}
console.log(`A row has been inserted with rowid ${this.lastID}`);
});
运行上面的代码将在我们的数据库中插入一行数据。在它完成后,我们会收到一条类似于“A row has been inserted with rowid 1”这样的成功消息。
要选择数据,我们可以使用与插入数据相同的数据库连接和执行查询的代码。我们可以使用以下代码从我们的数据库中选择数据:
db.serialize(() => {
db.each(`SELECT id, name, email FROM users`, (err, row) => {
if (err) {
console.error(err.message);
}
console.log(`${row.id} \t ${row.name} \t ${row.email}`);
});
});
运行上面的代码将选择我们的数据表中的所有数据。它将输出一个包含所有选定行的表格。
现在,我们已经学习了如何使用 Node.js 在 SQLite3 数据库中插入和选择数据。我们使用 SQLite3 NPM 模块来打开与 SQLite3 数据库实例的连接,并执行插入和选择数据的查询。我们使用 JavaScript 和 SQLite3 SQL 查询来实现这些查询。在执行数据库查询时,我们使用回调函数来处理成功和失败的情况。