一份关于Node入门开发指北之sqlite3数据库
const sqlite3 = require('sqlite3').verbose();
// 创建或打开数据库
let db = new sqlite3.Database('./database.sqlite3', (err) => {
if (err) {
console.error(err.message);
} else {
console.log('Connected to the SQLite database.');
}
});
// 创建表
db.run(`
CREATE TABLE IF NOT EXISTS articles (
id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
body TEXT,
created_at DATE DEFAULT (datetime('now', 'localtime'))
)
`, (err) => {
if (err) {
console.error(err.message);
} else {
console.log('Table created successfully.');
}
});
// 插入数据
const insertArticle = (title, body) => {
db.run(`
INSERT INTO articles (title, body)
VALUES (?, ?)
`, [title, body], (err) => {
if (err) {
console.error(err.message);
} else {
console.log(`A row has been inserted with rowid ${this.lastID}`);
}
});
};
// 查询数据
const getAllArticles = () => {
db.all(`
SELECT id, title, body, created_at
FROM articles
ORDER BY created_at DESC
`, (err, rows) => {
if (err) {
console.error(err.message);
} else {
rows.forEach((row) => {
console.log(row);
});
}
});
};
// 使用函数插入和查询数据
insertArticle('Node.js', 'Node.js is a JavaScript runtime built on Chrome\'s V8 JavaScript engine.');
getAllArticles();
// 关闭数据库
db.close((err) => {
if (err) {
console.error(err.message);
} else {
console.log('Close the database connection.');
}
});
这段代码展示了如何使用Node.js和sqlite3模块进行基本的数据库操作,包括创建表、插入数据、查询数据和关闭数据库连接。代码简洁,注重于展示核心功能,并提供了出错时的错误处理。
评论已关闭