Вот пример функции
CREATE OR REPLACE FUNCTION "Membership".status2(membershipid text)
RETURNS "Membership".memberstatus
LANGUAGE plpgsql
AS $function$
declare
_membershipStatus MemberStatus;
total integer;
typeId integer;
startDate date;
endDate date;
groupId integer;
membershipStatus varchar;
BEGIN
Select "TypeId", "StartDate","EndDate" into typeId, startDate, endDate from "Membership"."Memberships" M where M."MembershipId" = membershipId;
if endDate > NOW() then
_membershipStatus.groupid = 3;
_membershipStatus.membershipstatus = 'Expired';
end if;
RETURN _membershipStatus;
END;
$function$
;
Это прекрасно работает, когда вчера я звонил через
select status2('gwgwg');
Сегодня я начинаю реализацию и вдруг при вызове с помощью
select "Membership".status2('sdgsd');
Я получаю
Ошибка SQL [42704]: ОШИБКА: тип "memberstatus" не существует
Конечно, я пытался добавить "Членство" .memberstatus, но тот же результат.
Со вчерашнего дня ничего не изменилось, и когда я тестировал его, он работал нормально.
Я не могу понять, почему он снова исчезнет ???
У меня уже была эта проблема, и по какой-то причине через некоторое время все типы данных исчезали (после исправной работы в течение X минут). Они все еще находятся в типах данных схемы, но не найдены ... (?)
КСТАТИ
Когда я пытаюсь удалить тип данных, я получаю информацию о том, что функция зависит от него ... Но функция не может найти его (сначала она работала нормально).