Nodejs SQLite数据库操作插件node-sqlite3的使用
Nodejs SQLite数据库操作插件node-sqlite3的使用node-sqlite3
是一个用于 Node.js 的 SQLite 数据库操作插件。下面是一个简单的示例,展示如何安装、配置和使用 node-sqlite3
。
1. 安装
首先,你需要在你的项目中安装 sqlite3
包。你可以通过 npm(Node 包管理器)来安装它:
npm install sqlite3
2. 基本使用
创建数据库和表
const sqlite3 = require('sqlite3').verbose();
// 打开一个数据库文件,如果不存在则创建
let db = new sqlite3.Database(':memory:', (err) => {
if (err) {
console.error(err.message);
}
console.log('Connected to the in-memory SQlite database.');
});
// 创建一个表
db.serialize(() => {
db.run("CREATE TABLE lorem (info TEXT)");
// 插入多行数据
const stmt = db.prepare("INSERT INTO lorem VALUES (?)");
for (let i = 0; i < 10; i++) {
stmt.run("Ipsum " + i);
}
stmt.finalize();
// 查询数据
db.each("SELECT rowid AS id, info FROM lorem", (err, row) => {
if (err) {
console.error(err.message);
}
console.log(row.id + ": " + row.info);
});
});
// 关闭数据库连接
db.close();
这段代码做了以下几件事:
- 连接到一个内存中的 SQLite 数据库。
- 创建了一个名为
lorem
的表。 - 向该表中插入了 10 条记录。
- 查询并打印出所有记录。
3. 更多功能
参数化查询
使用参数化查询可以避免 SQL 注入攻击,并提高性能:
db.get("SELECT rowid AS id, info FROM lorem WHERE rowid = ?", [5], (err, row) => {
if (err) {
console.error(err.message);
}
console.log(row.id + ": " + row.info);
});
事务处理
db.run("BEGIN TRANSACTION");
db.run("UPDATE lorem SET info = 'Updated Info' WHERE rowid = 1");
db.run("COMMIT");
4. 错误处理
始终检查错误以确保数据库操作成功:
db.run("INSERT INTO lorem VALUES (?)", ["Test"], function(err) {
if (err) {
return console.error(err.message);
}
console.log(`A row has been inserted with rowid ${this.lastID}`);
});
以上就是 node-sqlite3
的基本使用方法。希望这对你有所帮助!
当然!node-sqlite3
是一个非常流行的 Node.js 模块,用于与 SQLite 数据库进行交互。首先,你需要安装它:
npm install sqlite3
接下来,你可以开始编写一些基本的代码来操作数据库。这里有一个简单的例子,展示如何创建数据库、表,插入数据以及查询数据:
const sqlite3 = require('sqlite3').verbose();
let db = new sqlite3.Database(':memory:', (err) => {
if (err) {
return console.error(err.message);
}
console.log('Connected to the in-memory SQlite database.');
});
// 创建表
db.run(`CREATE TABLE lorem (info TEXT)`);
// 插入数据
const stmt = db.prepare("INSERT INTO lorem VALUES (?)");
for (let i = 0; i < 10; i++) {
stmt.run("Ipsum " + i);
}
stmt.finalize();
// 查询数据
db.all("SELECT rowid AS id, info FROM lorem", [], (err, rows) => {
if (err) {
throw err;
}
rows.forEach((row) => {
console.log(row.id + ": " + row.info);
});
});
// 关闭数据库连接
db.close();
这段代码首先连接到一个内存中的 SQLite 数据库,然后创建了一个名为 lorem
的表,向其中插入了 10 条记录,并最后查询并打印了所有记录。希望这能帮到你!
node-sqlite3
是一个用于 Node.js 的 SQLite 数据库驱动,可以让你方便地进行数据库的增删改查操作。下面是一些基本的使用方法和示例代码。
安装
首先,你需要安装 sqlite3
模块:
npm install sqlite3
连接数据库
你可以通过以下代码连接到 SQLite 数据库。如果数据库文件不存在,它将自动创建一个新的数据库文件。
const sqlite3 = require('sqlite3').verbose();
// 打开数据库
let db = new sqlite3.Database('./mydb.sqlite', (err) => {
if (err) {
console.error(err.message);
}
console.log('Connected to the mydb database.');
});
创建表
接下来,我们可以创建一个表来存储数据。
db.run(`CREATE TABLE IF NOT EXISTS employees (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
position TEXT NOT NULL,
office TEXT NOT NULL
)`, (err) => {
if (err) {
console.error(err.message);
}
console.log('Table created.');
});
插入数据
插入数据也非常简单:
db.run(`INSERT INTO employees (name, position, office) VALUES (?, ?, ?)`, ['John Doe', 'Software Engineer', 'New York'], function(err) {
if (err) {
return console.error(err.message);
}
console.log(`A row has been inserted with rowid ${this.lastID}`);
});
查询数据
查询数据可以通过 all
或 get
方法实现:
db.all(`SELECT * FROM employees WHERE office = ?`, ['New York'], (err, rows) => {
if (err) {
throw err;
}
rows.forEach((row) => {
console.log(row.id + ": " + row.name + ", " + row.position + ", " + row.office);
});
});
更新数据
更新数据同样简单:
db.run(`UPDATE employees SET position = ? WHERE name = ?`, ['Senior Software Engineer', 'John Doe'], function(err) {
if (err) {
throw err;
}
console.log(`Rows updated: ${this.changes}`);
});
删除数据
最后,删除数据:
db.run(`DELETE FROM employees WHERE name = ?`, ['John Doe'], function(err) {
if (err) {
throw err;
}
console.log(`${this.changes} row(s) deleted`);
});
关闭数据库连接
完成所有数据库操作后,记得关闭数据库连接:
db.close((err) => {
if (err) {
return console.error(err.message);
}
console.log('Close the database connection.');
});
这些是使用 node-sqlite3
进行基本数据库操作的一些示例。你可以根据需要调整这些代码以满足你的具体需求。
node-sqlite3
是一个用于 Node.js 的 SQLite 数据库操作库。首先,通过npm安装:npm install sqlite3
。
基本使用步骤如下:
- 引入模块:
var sqlite3 = require('sqlite3').verbose();
- 打开数据库:
let db = new sqlite3.Database('./data.db');
- 执行SQL命令:
db.run("CREATE TABLE IF NOT EXISTS demo (id INT, name TEXT)");
- 查询数据:
db.all("SELECT * FROM demo", [], (err, rows) => { ... });
- 完成后关闭数据库连接:
db.close();
此库支持事务、绑定参数等功能,可以满足大部分操作需求。