SQLite 是一种轻量级的关系型数据库,由于其小巧、嵌入式、易用等特点,被广泛用于移动设备、嵌入式系统等场景中。而 Node.js 作为一种服务器端 JavaScript 运行环境,也可以利用 SQLite 进行数据存储。本文将介绍如何在 Node.js 中使用 SQLite 进行数据存储。
安装 SQLite
在使用 SQLite 之前,需要先安装 SQLite。可以从 SQLite 官网(https://sqlite.org/download.html)下载适合自己操作系统的 SQLite 安装包,也可以通过包管理器进行安装。以 Ubuntu 为例,可以通过以下命令进行安装:
sudo apt-get update sudo apt-get install sqlite3
安装完成后,可以通过以下命令验证 SQLite 是否安装成功:
sqlite3 --version
安装 SQLite3 模块
Node.js 提供了 SQLite3 模块,可以方便地在 Node.js 中使用 SQLite。在使用 SQLite3 模块之前,需要先安装 SQLite3 模块。可以通过以下命令进行安装:
npm install sqlite3
创建数据库
在使用 SQLite 进行数据存储之前,需要先创建一个数据库。可以通过以下代码创建一个名为 test.db
的数据库:
const sqlite3 = require('sqlite3').verbose(); let db = new sqlite3.Database('./test.db', (err) => { if (err) { console.error(err.message); } console.log('Connected to the test database.'); });
在以上代码中,首先引入了 SQLite3 模块,然后创建了一个名为 test.db
的数据库。如果创建成功,控制台将输出 Connected to the test database.
。
创建表格
在创建数据库之后,需要创建一个表格来存储数据。可以通过以下代码创建一个名为 users
的表格:
db.run('CREATE TABLE users(id INT, name TEXT, email TEXT)', (err) => { if (err) { console.error(err.message); } console.log('Table users created.'); });
在以上代码中,使用 run
方法执行 SQL 语句来创建表格。如果创建成功,控制台将输出 Table users created.
。
插入数据
在创建表格之后,可以向表格中插入数据。可以通过以下代码向 users
表格中插入一条数据:
db.run('INSERT INTO users(id, name, email) VALUES(?, ?, ?)', [1, 'Alice', 'alice@example.com'], (err) => { if (err) { console.error(err.message); } console.log('A row has been inserted.'); });
在以上代码中,使用 run
方法执行 SQL 语句来向表格中插入数据。为了避免 SQL 注入攻击,建议使用参数化查询。在 VALUES
关键字后使用 ?
占位符,然后在 run
方法的第二个参数中传入占位符的实际值。如果插入成功,控制台将输出 A row has been inserted.
。
查询数据
在插入数据之后,可以通过以下代码查询 users
表格中的所有数据:
db.all('SELECT * FROM users', (err, rows) => { if (err) { console.error(err.message); } rows.forEach((row) => { console.log(row.id, row.name, row.email); }); });
在以上代码中,使用 all
方法执行 SQL 语句来查询表格中的所有数据。如果查询成功,将返回一个包含所有数据的数组。可以通过遍历数组来输出每一行数据。
更新数据
在查询数据之后,可以通过以下代码更新 users
表格中的一条数据:
db.run('UPDATE users SET email = ? WHERE id = ?', ['alice2@example.com', 1], (err) => { if (err) { console.error(err.message); } console.log('A row has been updated.'); });
在以上代码中,使用 run
方法执行 SQL 语句来更新表格中的一条数据。如果更新成功,控制台将输出 A row has been updated.
。
删除数据
在更新数据之后,可以通过以下代码删除 users
表格中的一条数据:
db.run('DELETE FROM users WHERE id = ?', [1], (err) => { if (err) { console.error(err.message); } console.log('A row has been deleted.'); });
在以上代码中,使用 run
方法执行 SQL 语句来删除表格中的一条数据。如果删除成功,控制台将输出 A row has been deleted.
。
关闭数据库
在使用完数据库之后,需要关闭数据库。可以通过以下代码关闭数据库:
db.close((err) => { if (err) { console.error(err.message); } console.log('Close the database connection.'); });
在以上代码中,使用 close
方法关闭数据库。如果关闭成功,控制台将输出 Close the database connection.
。
总结
本文介绍了如何在 Node.js 中使用 SQLite 进行数据存储。首先需要安装 SQLite 和 SQLite3 模块,然后可以创建数据库、创建表格、插入数据、查询数据、更新数据和删除数据。SQLite 具有轻量级、嵌入式、易用等特点,适用于移动设备、嵌入式系统等场景中。在 Node.js 中使用 SQLite 进行数据存储,可以提高数据存储的效率和可靠性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6552eb32d2f5e1655dc9ef63