Files
biggus-dickus/crates/db/migrations/0003_object.sql
T
2026-06-02 09:18:03 +02:00

19 lines
759 B
SQL

-- Catalogue objects (the inventory-minimum core). One row = one object or a group.
CREATE TABLE object (
id UUID PRIMARY KEY,
object_number TEXT NOT NULL UNIQUE,
object_name TEXT NOT NULL,
number_of_objects INTEGER NOT NULL DEFAULT 1 CHECK (number_of_objects >= 1),
brief_description TEXT,
current_location TEXT,
current_owner TEXT,
recorder TEXT,
recording_date DATE,
visibility TEXT NOT NULL DEFAULT 'draft'
CHECK (visibility IN ('draft', 'internal', 'public')),
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
CREATE INDEX object_visibility_idx ON object (visibility);