upload-service/internal/db/schema.sql

17 lines
607 B
SQL

CREATE TABLE IF NOT EXISTS files (
id TEXT PRIMARY KEY,
filename TEXT NOT NULL,
r2_key TEXT NOT NULL UNIQUE,
size_bytes INTEGER NOT NULL,
content_type TEXT NOT NULL,
uploaded_at DATETIME DEFAULT (datetime('now')),
expires_at DATETIME,
password_hash TEXT,
delete_token TEXT NOT NULL UNIQUE,
download_count INTEGER DEFAULT 0,
batch_id TEXT
);
CREATE INDEX IF NOT EXISTS idx_files_expires_at ON files(expires_at) WHERE expires_at IS NOT NULL;
CREATE INDEX IF NOT EXISTS idx_files_delete_token ON files(delete_token);