migrations/006_document_files.sql
Rama main · réplica de lectura del repositorio original.
CREATE TABLE IF NOT EXISTS document_files (
id BIGSERIAL PRIMARY KEY,
document_id BIGINT NOT NULL REFERENCES documents(id) ON DELETE CASCADE,
storage_kind TEXT NOT NULL DEFAULT 'local',
relative_path TEXT,
original_name TEXT,
stored_name TEXT,
mime_type TEXT,
file_size_bytes BIGINT,
content_hash TEXT,
external_url TEXT,
local_available BOOLEAN NOT NULL DEFAULT FALSE,
metadata JSONB NOT NULL DEFAULT '{}'::jsonb,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
UNIQUE (document_id)
);
CREATE INDEX IF NOT EXISTS idx_document_files_document_id
ON document_files (document_id);
CREATE INDEX IF NOT EXISTS idx_document_files_storage_kind
ON document_files (storage_kind);
CREATE INDEX IF NOT EXISTS idx_document_files_external_url
ON document_files (external_url);