Files
gupi-osint-board/migrations/003_document_assets.sql
T

18 lines
615 B
SQL
Raw Normal View History

2026-08-14 12:43:11 +02:00
CREATE TABLE osint.assets (
id TEXT PRIMARY KEY,
level_id TEXT NOT NULL REFERENCES osint.levels(id) ON DELETE CASCADE,
original_name TEXT NOT NULL,
mime_type TEXT NOT NULL,
byte_size BIGINT NOT NULL CHECK (byte_size >= 0),
content BYTEA NOT NULL,
checksum_sha256 TEXT NOT NULL,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);
CREATE INDEX assets_level_idx ON osint.assets(level_id, created_at);
ALTER TABLE osint.widgets
ADD COLUMN asset_id TEXT REFERENCES osint.assets(id) ON DELETE SET NULL;
COMMENT ON TABLE osint.assets IS 'Uploaded source files used by database-backed document widgets';