Я написал функцию PostgreSQL, содержащую некоторое время оператор вроде:проверить логическое состояние внутри функции
WHILE id_exist == 'f' LOOP
lotto_id = lotto_id + 1;
id_exist = check_if_exist(lotto_id, 'lotto', 'id');
END LOOP;
Где id_exist
является булева переменная инициализируется вызовом check_if_exist()
метод (используется также в то время как код), возвращающего boolean value.
Теперь, когда я пытаюсь вызвать свою функцию, я получаю эту ошибку
ERROR: operator does not exist: boolean == unknown
LINE 1: SELECT id_exist == 'f'
^
HINT: No operator matches the given name and argument type(s). You might need to add
explicit type casts.
QUERY: SELECT id_exist == 'f'
CONTEXT: PL/pgSQL function "acquistolotto" line 11 at WHILE
ОК, это право. Но теперь у меня проблема с бесконечным циклом. Я открою еще один вопрос. спасибо Несомненно, я установил это значение, вызывая функцию check_if_exist(), из-за времени – giozh
Если это так, похоже, что ваша функция check_if_exist() всегда возвращает «false». Взгляните на это, во-первых. – Curt