Table "public.portfolioprojects" Column | Type | Collation | Nullable | Default ---------------+-----------------------------+-----------+----------+----------------------- id | text | | not null | categoryid | text | | not null | ''::text title | character varying(255) | | not null | ''::character varying description | text | | | ''::text featuredimage | character varying(500) | | | ''::character varying images | text | | | '[]'::text displayorder | integer | | | 0 isactive | boolean | | | true createdat | timestamp without time zone | | | CURRENT_TIMESTAMP updatedat | timestamp without time zone | | | CURRENT_TIMESTAMP category | character varying(255) | | | imageurl | character varying(500) | | | Indexes: "portfolioprojects_pkey" PRIMARY KEY, btree (id) "idx_portfolio_active_display" btree (isactive, displayorder, createdat DESC) WHERE isactive = true "idx_portfolio_category" btree (category) WHERE isactive = true "idx_portfolio_createdat" btree (createdat DESC) WHERE isactive = true "idx_portfolio_displayorder" btree (displayorder, createdat DESC) WHERE isactive = true "idx_portfolio_isactive" btree (isactive) WHERE isactive = true Check constraints: "check_displayorder_nonnegative" CHECK (displayorder >= 0) Triggers: trg_portfolioprojects_update BEFORE UPDATE ON portfolioprojects FOR EACH ROW EXECUTE FUNCTION update_timestamp()