CREATE OR REPLACE FUNCTION medreport.update_account(p_name character varying, p_last_name text, p_personal_code text, p_phone text, p_city text, p_has_consent_personal_data boolean, p_uid uuid, p_email character varying) RETURNS void LANGUAGE plpgsql AS $function$begin update medreport.accounts set name = coalesce(p_name, name), last_name = coalesce(p_last_name, last_name), personal_code = coalesce(p_personal_code, personal_code), phone = coalesce(p_phone, phone), city = coalesce(p_city, city), has_consent_personal_data = coalesce(p_has_consent_personal_data, has_consent_personal_data), email = coalesce(p_email, email) where id = p_uid; end;$function$ ; grant execute on function medreport.update_account( p_name character varying, p_last_name text, p_personal_code text, p_phone text, p_city text, p_has_consent_personal_data boolean, p_uid uuid, p_email character varying) to authenticated, service_role;