Vad SQLite är
SQLite är en databas lagrad i en enda fil (t.ex. web.db). Du behöver inte installera någon stor server – idealiskt för att lära sig och mindre projekt. Data i den överlever en Node.js-omstart.
I Node.js använder vi paketet better-sqlite3:
cd my-server
npm install better-sqlite3
Jag visar: en tabell och första posten
I server.js (eller en ny database.js som du importerar):
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);
Kör node server.js (eller ett kort testscript). Du ser en array av objekt i konsolen. En fil som heter web.db dyker upp i din projektmapp – det är hela databasen.
SQL i korthet: CREATE TABLE = en ny tabell (som ett ark i Excel). INSERT = lägg till en rad. SELECT = läs data. Frågetecknen ? i prepare skyddar mot SQL injection – sätt aldrig in användartext direkt i en query-sträng!
Nu är det din tur 💪
- Installera
better-sqlite3i din servermapp. - Skapa en
vzkazy-tabell efter exemplet (kolumner: id, jmeno, text, vytvoreno). - Sätt in 3 testmeddelanden med
INSERT. - Stoppa scriptet, kör det igen och
SELECTen gång till – finns datan kvar? - Lägg till
web.dbi.gitignore(i produktion har varje server sin egen databas; ibland exporteras den separat).
Kolla: Filen web.db finns och data finns kvar efter en omstart. I nästa lektion kopplar vi hela gästboken till den via ett API.
Det här tar du med dig från lektionen
- SQLite = en databas i filen
web.db. CREATE TABLE,INSERT,SELECT– grunderna i SQL.- Parametriserade queries (
?) för säkerhet.
© 2026 Ing. Martin Polak / AlgoRhino · Villkor för innehållsanvändning