SQLite 是什么
SQLite 是存在 单个文件 里的数据库(比如 web.db)。不用装大服务器——适合学习和中小型项目。里面的数据 Node.js 重启后还在。
在 Node.js 里我们用 better-sqlite3 包:
cd my-server
npm install better-sqlite3
跟我看:表和第一条记录
在 server.js(或新建 database.js 再 import):
const Database = require("better-sqlite3");
const db = new Database("web.db");
// Create the table if it doesn't exist yet
db.exec(`
CREATE TABLE IF NOT EXISTS vzkazy (
id INTEGER PRIMARY KEY AUTOINCREMENT,
jmeno TEXT NOT NULL,
text TEXT NOT NULL,
vytvoreno TEXT DEFAULT CURRENT_TIMESTAMP
)
`);
// Insert one row
const vloz = db.prepare("INSERT INTO vzkazy (jmeno, text) VALUES (?, ?)");
vloz.run("Martin", "First message in the database! 🎉");
// Read all rows
const vse = db.prepare("SELECT * FROM vzkazy").all();
console.log(vse);
运行 node server.js(或短测试脚本)。控制台会看到对象数组。项目文件夹里出现 web.db 文件——那就是整个数据库。
💡
SQL 速览: CREATE TABLE = 新表(像 Excel 里一张表)。INSERT = 加一行。SELECT = 读数据。prepare 里的问号 ? 防 SQL 注入——永远不要把用户文字直接拼进查询字符串!
轮到你了 💪
- 在服务器文件夹安装
better-sqlite3。 - 按例子创建
vzkazy表(列:id、jmeno、text、vytvoreno)。 - 用
INSERT插入 3 条测试消息。 - 停脚本,再运行,再
SELECT一次——数据 还在吗? - 把
web.db加进.gitignore(生产环境每台服务器有自己的库;有时单独导出)。
✅
检查一下: web.db 存在,重启后数据还在。下一课我们通过 API 把整个留言本连上去。
这堂课你要记住
- SQLite = 文件
web.db里的数据库。 CREATE TABLE、INSERT、SELECT——SQL 基础。- 参数化查询(
?)保证安全。
© 2026 Ing. Martin Polak / AlgoRhino · 内容使用条款