Files
owly-news/backend-rust/migrations/001_initial_schema.up.sql

39 lines
929 B
SQL

-- Initial database schema for Owly News Summariser
-- News table to store articles
CREATE TABLE IF NOT EXISTS news
(
id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT NOT NULL,
summary TEXT,
url TEXT NOT NULL,
published TIMESTAMP NOT NULL,
country TEXT NOT NULL,
created_at INTEGER DEFAULT (strftime('%s', 'now'))
);
-- Index for faster queries on published date
CREATE INDEX IF NOT EXISTS idx_news_published ON news (published);
-- Feeds table to store RSS feed sources
CREATE TABLE IF NOT EXISTS feeds
(
id INTEGER PRIMARY KEY,
country TEXT,
url TEXT UNIQUE NOT NULL
);
-- Settings table for application configuration
CREATE TABLE IF NOT EXISTS settings
(
key TEXT PRIMARY KEY,
val TEXT NOT NULL
);
-- Meta table for application metadata
CREATE TABLE IF NOT EXISTS meta
(
key TEXT PRIMARY KEY,
val TEXT NOT NULL
);