alter table profiles add column if not exists role text not null default 'user'; do $$ begin if not exists ( select 1 from pg_constraint where conname = 'profiles_role_check' ) then alter table profiles add constraint profiles_role_check check (role in ('user', 'moderator', 'admin', 'banned')); end if; end $$;