CREATE TABLE albums ( id UUID PRIMARY KEY, owner_id UUID NOT NULL REFERENCES users (id), name TEXT NOT NULL, description TEXT, is_public BOOLEAN NOT NULL DEFAULT FALSE, created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW() ); CREATE TABLE album_media ( album_id UUID NOT NULL REFERENCES albums (id) ON DELETE CASCADE, media_id UUID NOT NULL REFERENCES media (id) ON DELETE CASCADE, PRIMARY KEY (album_id, media_id) ); CREATE INDEX idx_albums_owner_id ON albums (owner_id); CREATE INDEX idx_album_media_media_id ON album_media (media_id);